天天看點

hibernate學習筆記第四天(1)Hibernate查詢方式

此文章為自己書寫,在Word上做的筆記,然後拷貝到這上邊的,無任何抄襲。另外若是程式有任何問題可以評論,也可私信我。

若是想看具體第四天的代碼可點選此處。

Hibernate查詢方式

1.對象導航查詢

(1)根據id查詢出某個客戶,再查詢這個客戶裡邊所有的聯系人

2.OID查詢

(1)根據id查詢某一條記錄,傳回對象

3.hql查詢

(1)Query對象,寫hql語句實作查詢

4.QBC查詢

(1)Ceiteria對象

5.本地sql查詢

(1)SQLQuery對象

對象導航查詢

1.查詢某個客戶裡面所有的聯系人過程,使用對象導航查詢

2.代碼

hibernate學習筆記第四天(1)Hibernate查詢方式

OID查詢

1.根據id查詢某一條記錄

(1)調用session裡邊的get方法進行查詢

2.代碼

hibernate學習筆記第四天(1)Hibernate查詢方式

HQL查詢

1.HQL:hibernate query language提供一種查詢語言,hql語言與普通sql語言相似,差別:普通sql操作資料庫表和字段,hql操作實體類和屬性

2.常用的hql語言

(1)查詢所有:from 實體類名稱

(2)條件查詢:from 實體類名稱 where 屬性名稱=?

3.使用hql查詢操作時候,使用Query對象

(1)建立Query對象,寫hql語句

(2)調用query對象的方法得到結果

查詢所有

1.hql查詢所有寫法

(1)from 實體類名稱

2.代碼

hibernate學習筆記第四天(1)Hibernate查詢方式

條件查詢

1.hql條件語句查詢寫法

(1)from 實體類名稱 where 實體類屬性名稱=? and 實體類屬性名稱=?

from 實體類名稱 where 實體類屬性名稱 like ?

2.代碼

hibernate學習筆記第四天(1)Hibernate查詢方式

模糊查詢:

hibernate學習筆記第四天(1)Hibernate查詢方式

排序查詢

1.hql排序語句寫法

(1)from 實體類名稱 order by 實體類屬性名稱 asc/desc

(2)代碼

hibernate學習筆記第四天(1)Hibernate查詢方式

分頁查詢

1.mysql實作分頁

(1)使用關鍵字limit實作

2.用hql實作分頁

(1)在hql操作中,語句中不能用limit,因為沒有這個關鍵字,而hibernate的query對象封裝了兩個方法實作分頁操作

3.代碼:

hibernate學習筆記第四天(1)Hibernate查詢方式

投影查詢

1.投影查詢:查詢的不是所有字段的值,而是部分字段的值,比如隻查詢某一個字段

2.投影查詢的hql語句寫法:

(1)select 實體類屬性名稱1, 實體類屬性名稱2 from 實體類名稱

(2)select後邊不能寫*,因為不支援

3.具體實作

hibernate學習筆記第四天(1)Hibernate查詢方式

聚集函數查詢

1.查用的聚集函數

(1)count/sum/avg/max/min

2.hql聚集函數語句的寫法

(1)查詢表中的記錄數

select count(*) from 實體類的名稱

傳回的是一個Long類型

hibernate學習筆記第四天(1)Hibernate查詢方式

解決辦法:先将Object類型轉換成Long類型,再将Long類型轉換成int類型

hibernate學習筆記第四天(1)Hibernate查詢方式

繼續閱讀