欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JPA原生SQL(自定義SQL)分頁(yè)查詢邏輯詳解

 更新時(shí)間:2021年11月25日 14:40:03   作者:Java海洋  
這篇文章主要介紹了JPA原生SQL(自定義SQL)分頁(yè)查詢邏輯詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

JPA原生SQL(自定義SQL)分頁(yè)查詢

JPA自己寫(xiě)SQL查詢的話,分頁(yè)還稍微麻煩

經(jīng)過(guò)測(cè)試下面方法可以

@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對(duì)象里定義排序的字段

Pageable pageable = new PageRequest(pageNumber, pageSize,Sort.Direction.DESC, "id");

JPA原生SQL分頁(yè)查詢踩坑記錄

1.問(wèn)題簡(jiǎn)述

JPA 分頁(yè)查詢這個(gè)很簡(jiǎn)單,只要在接口上加上一個(gè)參數(shù) Pageable

比如

但是 仔細(xì)看 我自定義的 SQL 這里用了 a.* 來(lái)只獲取一張表的字段 .

但是他生成的 SQL 語(yǔ)句就成了.

這樣就導(dǎo)致了 查詢異常.

2.解決方案

1.指定count的字段

在@Query 注解中添加一個(gè)參數(shù)

然后,生成的SQL語(yǔ)句就是

2.指定count的查詢語(yǔ)句

同樣也是 @Query中添加參數(shù)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論