hibernate的常見錯誤

2021-09-01 12:07:54 字數 1156 閱讀 5761

1.查詢記錄總數

錯誤:hql:select count(1) from ....

正確:hql:select count(*) from ....

2.criteria的同乙個條件不能復用,

例如錯誤:

criteria criteria = session.createcriteria(a.class);

criteria.add(restrictions.eq("field1","xx");

criteria.list();

criteria.add(restrictions.eq("field1","yy");//出錯

criteria.list();

正確:

criteria criteria = session.createcriteria(a.class);

criteria.add(restrictions.eq("field1","xx");

criteria.list();

criteria=session.createcriteria(a.class);

criteria.add(restrictions.eq("field1","yy");

criteria.list();

3.criteria的rowcount返回的是integer

錯誤:

criteria criteria = xxdao.getcriteria(xx.class);

criteria.setprojection(projections.rowcount());

int count = ((long)procriteria.uniqueresult()).intvalue();//錯誤

正確:

criteria criteria = xxdao.getcriteria(xx.class);

criteria.setprojection(projections.rowcount());

int count = ((integer)procriteria.uniqueresult()).intvalue();//正確

4.hql對聚合函式count,sum返回的型別卻是long,這點要注意和3區分開。

hibernate常見錯誤

1.hibernate could not synchronize database state with session 1.主鍵不是自動生成的,然後自己沒手動設定。2.插入的實體欄位跟資料庫的關鍵字衝突。3.更新的時候,如果更新乙個不存在的id實體,也會出現此問題。4.自己在資料庫裡手工新增了資...

Hibernate配置常見錯誤

org.slf4j.impl.staticloggerbinder 異常 當我們確定版本後,然後根據版本配置環境時,新增必須的jar包,寫好配置檔案後出現 slf4j failed to load class org.slf4j.impl.staticloggerbinder slf4j defau...

hibernate常見錯誤分析

錯誤原因 在hibernate內部,不知道person是乙個持久化類 錯誤之一 在hibernate.cfg.xml檔案中,沒有把person的對映檔案加進去 錯誤原因 表不存在 根據持久化類和對映檔案沒有建立表 在hibernate.cfg.xml中,得配置 update 才能讓hibernate...