jpa分页查询_spring data jpa 居然提供了这么多查询方式!
spring data jpa提供了多種查詢方式,如下:
方法名稱查詢
繼承Repository接口
測試代碼
方法名稱中支持的關(guān)鍵字(官方文檔提供)
使用JPA命名查詢
在User實體中定義jpql(類似于hql)
jpql(百度百科)
繼承JpaRepository接口
測試
使用@Query查詢
和命名查詢不同的是,將jpql寫到了 dao 方法上,感覺這樣代碼可讀性高,移植性不高。
測試
排序
dao
測試
命名參數(shù)
SpEl表達式
根據(jù)示例查詢
根據(jù)規(guī)格查詢
繼承JpaSpecificationExecutor接口
這種方式的更加適用于表單查詢,從web層指定查詢條件,代碼寫好后,如果要修改查詢條件,只需要改web層代碼,不需要改service 或者 dao層代碼。
本地sql查詢
分頁查詢
這里已經(jīng)過時,官網(wǎng)示例還沒有更新
sql輸出:
Hibernate: select user0_.id as id1_0_, user0_.name as name2_0_ from User user0_ where user0_.name=? limit ?, ?
Hibernate: select count(user0_.id) as col_0_0_ from User user0_ where user0_.name=?
好了,以上就是spring data jpa提供的主要查詢方式,其中個人還是比較鐘愛方法名稱查詢,@Query查詢。
你喜歡哪一種?
總結(jié)
以上是生活随笔為你收集整理的jpa分页查询_spring data jpa 居然提供了这么多查询方式!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js array 删除指定元素_数组--
- 下一篇: jvm 堆外内存_NIO效率高的原理之零