JPA原生SQL(自定義SQL)分頁查詢邏輯詳解
更新時間:2021年11月25日 14:40:03 作者:Java海洋
這篇文章主要介紹了JPA原生SQL(自定義SQL)分頁查詢邏輯詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
JPA原生SQL(自定義SQL)分頁查詢
JPA自己寫SQL查詢的話,分頁還稍微麻煩
經(jīng)過測試下面方法可以
@Query(nativeQuery = true, value = "select * from goods where " +
" codeName like CONCAT('%',?1,'%') and order by ?w#{#pageable}")
Page<Goods> findByName(String name, Pageable pageable);
pageable對象里定義排序的字段
Pageable pageable = new PageRequest(pageNumber, pageSize,Sort.Direction.DESC, "id");
JPA原生SQL分頁查詢踩坑記錄
1.問題簡述
JPA 分頁查詢這個很簡單,只要在接口上加上一個參數(shù) Pageable
比如

但是 仔細看 我自定義的 SQL 這里用了 a.* 來只獲取一張表的字段 .
但是他生成的 SQL 語句就成了.
![]()
這樣就導致了 查詢異常.
2.解決方案
1.指定count的字段
在@Query 注解中添加一個參數(shù)

然后,生成的SQL語句就是
![]()
2.指定count的查詢語句
同樣也是 @Query中添加參數(shù)
![]()
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
SpringMvc直接接收json數(shù)據(jù)自動轉(zhuǎn)化為Map的實例
今天小編就為大家分享一篇SpringMvc直接接收json數(shù)據(jù)自動轉(zhuǎn)化為Map的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08
Spring中的DefaultResourceLoader使用方法解讀
這篇文章主要介紹了Spring中的DefaultResourceLoader使用方法解讀,DefaultResourceLoader是spring提供的一個默認的資源加載器,DefaultResourceLoader實現(xiàn)了ResourceLoader接口,提供了基本的資源加載能力,需要的朋友可以參考下2024-02-02
spring異步service中處理線程數(shù)限制詳解
這篇文章主要給大家介紹了關于spring異步service中處理線程數(shù)限制的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用spring具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09

