91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring Data JPA怎么使用QueryDsl查詢并分頁

發布時間:2021-11-21 12:15:15 來源:億速云 閱讀:959 作者:小新 欄目:開發技術

小編給大家分享一下Spring Data JPA怎么使用QueryDsl查詢并分頁,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

Spring Data JPA 使用QueryDsl查詢并分頁

 QProblemPoint qProblemPoint = QProblemPoint.problemPoint;
        Map<String,String> map = getWhere(param);
 
        JPAQuery<ProblemPoint> query = jpaQueryFactory
                .selectFrom(qProblemPoint)
                .where(
                        qProblemPoint.problemClassify.like(map.get("problemClassify")),//問題分類
                        qProblemPoint.problemLevel.like(map.get("problemLevel")),//問題級別
                        qProblemPoint.securityRiskEvent.like(map.get("securityRiskEvent")),//風險事件
                        qProblemPoint.riskItems.like(map.get("riskItems"))//安全風險項
                );
 
        List<ProblemPoint> list = query
                .offset(param.getStart())
                .limit(param.getLength()).fetch();
        long count = query.fetchCount();
  • QProblemPoint:是編譯出來的實體

  • query :根據條件查詢出來的集合

  • list:根據前臺傳來的進行分頁操作

  • .fetch():相當于.get() 可看出返回類型。

使用QueryDSL

補充springDataJpa進行復雜動態sql語句進行sql查詢 實現 關聯 分頁等功能

@Test
public void testComplexSelect() {
    QQyOnlineCall onlineCall = QQyOnlineCall.qyOnlineCall;
    QClientList clientList = QClientList.clientList;
    // page必須從1開始
    PageRequest request = PageRequest.of(0, 10);
    // 構建復雜查詢語句
    List<Tuple> result = mFactory.select(onlineCall.id, onlineCall.cUsesign, onlineCall.cYgscode, clientList.cClientname, clientList.cPhone1)
            .from(onlineCall)
            .leftJoin(clientList)
            .on(onlineCall.cClientid.eq(clientList.id))
            .where(onlineCall.cCom.eq("C0003"))
            .limit(request.getPageSize()) // 單頁查詢數量
            .offset(request.getPageSize() * request.getPageNumber()) // 偏移量
            .fetch();
    // 獲取結果
    for (Tuple tuple : result) {
        HashMap<String, Object> map = new HashMap<>();
        map.put("id", tuple.get(onlineCall.id));
        map.put("useSign", tuple.get(onlineCall.cUsesign));
        map.put("ygsCode", tuple.get(onlineCall.cYgscode));
        map.put("clientName", tuple.get(clientList.cClientname));
        map.put("phone", tuple.get(clientList.cPhone1));
        System.out.println(JsonUtils.toJson(map));
    }
}

看完了這篇文章,相信你對“Spring Data JPA怎么使用QueryDsl查詢并分頁”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

玉溪市| 元江| 清流县| 龙州县| 金沙县| 银川市| 威信县| 龙泉市| 南郑县| 靖江市| 筠连县| 唐河县| 泾阳县| 泽库县| 全椒县| 禹城市| 湘乡市| 年辖:市辖区| 宣城市| 水富县| 武山县| 泗洪县| 钟山县| 遂溪县| 开化县| 仙桃市| 资中县| 桂阳县| 诸城市| 霞浦县| 准格尔旗| 古交市| 阳江市| 肇东市| 洛隆县| 六安市| 旬阳县| 福鼎市| 徐水县| 金门县| 大理市|