今天使用ssh框架搭建的項目,進行查詢和保存操作,使用的是 public Collection<T> getAllEntry() { return this.hibernateTemplate.find("from "+this.classt.getName()); } public void saveEntry(T t) { this.hibernateTemplate.save(t); } 以前封裝的代碼也是這樣,但是今天怎么弄,都是有問題 當執行上面的hibernateTemplate.find或hibernateTemplate.save() 程序就沒有反應了,控制台也不打印讓人高興的錯誤信息(e.printStackTrace(); ), 但是控制台 可以打印查詢和insert的語句, 搞了很長時間,那個着急上火啊, 最后收到網友的啟發,在上面的方法中加上了try-catch打印了一下異常 這下終於發現了原因:提示查詢語句語法錯誤 代碼如下: public Collection<T> getAllEntry() { Collection<T> list = null; try { list = this.hibernateTemplate.find("from "+this.classt.getName()); } catch (Exception e) { e.printStackTrace(); } return list; } e.printStackTrace(); 提示查詢語句語法錯誤,提示在desc附進有錯誤,
但是自己並沒有是desc進行排序,為什么提示desc附近有錯誤, 自己恍然大悟,原來desc是關鍵字,自己在java的po類中使用了desc作為類的屬性,這和hibernate中查詢數據時的降序關鍵字,重復了