日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Hibernate屬性查詢簡(jiǎn)單講述

本文向大家介紹Hibernate屬性查詢,可能好多人還不了解Hibernate屬性查詢,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

今天說一下Hibernate屬性查詢:使用HQL的時(shí)候并不是把 hbm.xml 里面的所有屬性取出來,只取出有用的屬性便可以了,舉個(gè)例子:

 
 
 
  1. List list =session.createQuery
    ("select user.name,user.age from TUSER user").list();  
  2. Iterator it = list.iterator();  
  3. while(it.hasNext())  
  4. ...{  
  5. Object[] results = (Object[])it.next();  
  6. System.out.println(results[0]);  
  7. System.out.println(results[1]);  

如果覺得返回?cái)?shù)組的方式不夠符合面向?qū)ο蟮娘L(fēng)格,也可以使用構(gòu)造對(duì)象實(shí)例的方法對(duì)數(shù)組進(jìn)行封裝:

 
 
 
  1. List list = this.session.createQuery
    (" select new TUser(user.name,user.age) from TUser as user").list();  
  2. Iterator if = list.iterator();  
  3. while(it.hasNext())  
  4. ...{  
  5. TUser user = (TUser)it.next();  
  6. System.out.println(user.getName());  

著愛與那個(gè)就比較形象化一些,但是有一點(diǎn)要注意的是這個(gè)查詢結(jié)果的TUser對(duì)象僅僅是一普通的 java 對(duì)象,進(jìn)用于對(duì)查詢結(jié)果的封裝,除了在構(gòu)造是賦予的屬性值外,其他屬性均為未賦值狀態(tài),這就意味著,我們無法通過 Session 對(duì)此對(duì)象進(jìn)行更新,如果企圖對(duì) user 對(duì)象更新將導(dǎo)致向數(shù)據(jù)庫(kù)插入一條新的記錄,而不是更新原有記錄:

 
 
 
  1. while(it.hasNext())  
  2. ...{  
  3.  TUser user = (TUser)it.next();  
  4. user.setName("test");  
  5. session.saveOrUpdate(user);  
  6. //這里將導(dǎo)致一次 insert 操作,而非 update  

也可以使用像 SQL 那樣的統(tǒng)計(jì)函數(shù),比如:

 
 
 
  1. selet count(*),min(user.age) from TUser as user  
  2. select upper(user.name) from TUser as user  
  3. select distinct user.name from TUser as user 

以上介紹Hibernate屬性查詢。


當(dāng)前題目:Hibernate屬性查詢簡(jiǎn)單講述
轉(zhuǎn)載注明:http://www.5511xx.com/article/cdchjoc.html