Hibernate多表查詢結果處理

2021-05-26 03:11:56 字數 965 閱讀 2147

如果我們在hibernate中需要查詢多個表的不同字段,那麼如何來獲取hibernate多表查詢的結果呢?有兩種方式:

1、 對各個字段分別轉化成對應型別,如下:

query q = session.createquery(" select members, classinfo.classname "

+       

" from members members, classinfo classinfo "

+       

" where members.level = classinfo.classcode "

);          

list result = q.list();       

iterator it = result.iterator();       

while(it.hasnext()) 

這是獲取hibernate多表查詢的結果的最常用的方式。

2、構造自己的復合型別,如下:

query q = session.createquery

(" select new newmembers(members, classinfo.classname) "

+       

" from members members, classinfo classinfo "

+       

" where members.level = classinfo.classcode "

);

當然我們需要有乙個newmembers類和相應的構造方式。

以上便是兩種用於獲取hibernate多表查詢的結果的方法以及其相應的**。

Hibernate 多表查詢結果處理

hibernate可以用在任何jdbc可以使用的場合,從某種意義上來說,hibernate在任何場合下取代jdbc 如果我們在hibernate中需要查詢多個表的不同字段,那麼如何來獲取hibernate多表查詢的結果呢?用如下方式,返回的結果集是以陣列物件組成的集合 query q session...

Hibernate多表查詢結果處理

如果我們在hibernate中需要查詢多個表的不同字段,那麼如何來獲取hibernate多表查詢的結果呢?有兩種方式 1 對各個字段分別轉化成對應型別,如下 query q session.createquery select members,classinfo.classname from mem...

hibernate多表查詢

在沒有使用select的時候,返回的是乙個 student物件,否則返回的是乙個物件陣列 object ilist userlist session.find from testmssql.student as student where student.name 張三 nhibernate.nhi...