hibernate3中的離線查詢1

2021-08-29 17:10:04 字數 875 閱讀 6229

假設要通過stuname查詢乙個學生student記錄,可以如下:

detachedcriteria dc = detachedcriteria.forclass(student.class);

dc.add(restrictions.like("stuname", stuname, matchmode.anywhere));

如果要通過student的team的teamname查詢乙個student記錄:

detachedcriteria dc = detachedcriteria.forclass(student.class);

dc.createalias("team", "t");

dc.add(restrictions.like("t.teamname", teamname, matchmode.anywhere));

這裡有乙個特殊情況,如果是對引用物件的id查詢,則可以不用建立引用,也就是可以不呼叫createalias()語句,如下所示:

detachedcriteria dc = detachedcriteria.forclass(student.class);

dc.add(restrictions.like("team.id", teamid, matchmode.anywhere));

多級查詢:

detachedcriteria dc = detachedcriteria.forclass(student.class);

dc.createalias("team", "t");

dc.createalias("t.school", "s");

dc.add(restrictions.like("s.schoolname", schoolname, matchmode.anywhere));

Hibernate 3 事務 查詢

二 查詢 三 1099占用解決方案 既然hibernate要和資料庫互動,那麼事務是必須要掌握的部分 為什麼要鎖 在併發訪問的時候,不使用鎖會導致部分資料並不能儲存到資料庫 private int version 版本號 public void setversion int version publ...

Hibernate3中的更新與刪除

在hibernate2中對某個表進行更新和刪除,必須先把它load出來,在後更改,然後再儲存。這個過程對於批量操作或者對於表關係比較複雜的情況,是很複雜的。在hibernate3中hql語句中已經支援update 和delete 了 但是要注意的是update和delete的hql不是物件導向的了。...

Hibernate 3 中文亂碼的解決

最近在專案中遇到了乙個問題,就是做查詢的時候,如果使用者輸入中文的話,明明資料庫有這樣的記錄,卻怎麼也檢索不到結果。作為除錯的手段,我把hql語句列印出來,也沒有發現什麼問題,和預期的一樣。甚是鬱悶,後來,上網查了一下資料,原來是hibernate3對中文的支援不是太好,需要在hibernate的配...