criteria criteria=session.createcriteria(user.class);
criteria addcriteria=criteria.createcriteria(「addresses」);(1)
addcriteria.add(express.like(「address」,」%tianjin%」));
list list=criteria.list();
for(int i=0;i
user user=(user)list.get(i);
system.out.println(user.getname()+」\n」);
set addresses=user.getaddresses();
iterator it=addresses.iterator();
while(it.hasnext()
}
當執行到了(1)處時,表明要針對user物件的addresses屬性新增新的查詢條件,因此當執行criteria.list()時,hibernate會生成類似如下的sql語句:
select * from user inner join address on user.id=address.id where address.address like 『%shanghai%』;
正如我們所見,我們可以通過向criteria中新增儲存關聯物件的集合屬性(addresses屬性儲存與user物件相關聯的address物件),來構造復合查詢,在資料庫一端是通過內連線查詢來實現。
有關hibernate的查詢
hibernate查詢方式舉例 1 單個物件 a query query session.createquery from consortbean a where a.person.id query.setstring 0,pb.getid 引數從零開始 list list query.list b...
hibernate的鎖機制
hibernate 鎖機制悲觀鎖和樂觀鎖 hibernate 鎖機制 1.悲觀鎖 它指的是對資料被外界修改持保守態度。假定任何時刻訪問資料時,都可能有另乙個客戶也正在訪問同一筆資料,為了保持資料被操作的一致性,於是對資料採取了資料庫層次的鎖定狀態,依靠資料庫提供的鎖機制來實現。基於 jdbc 實現的...
Hibernate的Criteria查詢總結
1 常用的查詢限制方法 在例程9 1中,restrictions.eq 方法表示equal,即等於的情況。restrictions類提供了查詢限制機制。它提供了許多方法,以實現查詢限制。這些方法及其他一些criteria常用查詢限制方法列於表9 1中。表9 1 criteria query常用的查詢...