• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • SpringData JPA分頁查詢

    首先我們需要知道SpringData JPA 的幾個接口





    其實看名字就大概懂了,也可以很方便的使用

    首先我們的持久化層繼承JpaRepository,相當于繼承了增刪改查的持久化層以及分頁查詢的持久化層

    所以如果我們要使用分頁查詢 ,我們只需要直接調用


    由一開始的圖也可以看到Pageable的其中一個實現,直接新建一個對象傳給你的持久層即可

    下面是一個小Demo的例子

    package Dao;
    
    import org.springframework.data.jpa.repository.JpaRepository;
    import org.springframework.data.jpa.repository.Modifying;
    import org.springframework.data.jpa.repository.Query;
    import org.springframework.data.repository.query.Param;
    import org.springframework.transaction.annotation.Transactional;
    
    import Entity.Student;
    
    //不需要使用事物注解,因為Spring已經默認幫我們開啟 當然我們可以利用注解進行額外的設置
    //對數據進行除了查詢之外我們都需要加入事物注解不然報錯 這是我個人測試
    public interface StudentDao extends JpaRepository,CommonDao{
    	
    	@Query("from Student s where s.sid = ?1")
    	Student findById(String id);
    //	兩種寫法一樣
    //	@Query("select * from Student s where s.sid = :id")
    //	Student findById(@Param("id")String id);
    	
    	@Transactional
    	@Query("delete from Student s where s.sid = ?1")
    	@Modifying//更新或者刪除需要額外加這個注解
    	void deleteById(String id);
    	
    	//父類方法直接調用 findAll(Pageable pageable)
    }
    
    
    //Service 層
    public Page findAll(Pageable pageable) {
    		// TODO Auto-generated method stub
    		return studentDao.findAll(pageable);
    	}
    
    //Controller
    @RequestMapping("/findAll")
    	public Page findAll(@RequestParam("f")int pageNum,@RequestParam("m")int size){
    		return studentService.findAll(new PageRequest(pageNum, size));
    	}
    
    下面是返回結果:

    {"content":[{"sid":"1","sname":"sam","sage":1},{"sid":"2","sname":"2","sage":2},{"sid":"3","sname":"3","sage":3}],"totalPages":1,"totalElements":3,"last":true,"number":0,"size":20,"numberOfElements":3,"sort":null,"first":true}

    版權聲明:本文為snakeMoving原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/snakeMoving/article/details/78309149

    智能推薦

    springData jpa 入門案例

    1.導入maven坐標 2.將springData 與 spring整合 3.將實體類與表映射起來 4.定義dao接口,實現JpaRepository和JpaSpecificationExecutor二個接口 5.簡單的crud...

    SpringBoot+SpringData JPA

    前言 在https://msd.misuland.com/pd/3070888491219948530這篇文章的基礎上補充和完善 一、新建項目 訪問官網,在Dependencies中選擇SpringBoot自身、LomBok的依賴、Spring Web模塊、Spring Data JPA以及MySQL驅動依賴,這樣點擊generate按鈕的時候會生成項目,并在項目中的pom文件中加入這些依賴。 二...

    SpringData JPA總結

    Demo 1)、編寫一個實體類(bean)和數據表進行映射,并且配置好映射關系;   3)、基本的配置JpaProperties 測試類: 說明:     ...

    springBoot整合springData Jpa

    1、springData是什么 Spring Data 項目的目的是為了簡化構建基于 Spring 框架應用的數據訪問計數,包括非關系數據庫、Map-Reduce 框架、云數據服務等等;另外也包含對關系數據庫的訪問支持。 Spring Data 包含多個子項目: 我們對于springBoot來說,持久層操作可以使用hibernate、mybatis,目前為止springBoot支持的最好的是spr...

    springdata-jpa demo

    demo 下載: http://download.csdn.net/download/knight_black_bob/9421829       jar     web.xml  applicationContext.xml       springmvc-servlet.xml    ...

    猜你喜歡

    SpringData Jpa入門案例

    SpringData是什么? Spring Data是Spring社區,對數據訪問進行開發的數據訪問框架。包括: Spring Data JPA的作用 Spring Data Jpa是Spring Data對Jpa框架的支持。Spring Data Jpa框架對JPA框架封裝了一層。讓我們可以做到。類似于Mybatis的零實現的功能。讓我們使用接口就可以完成數據庫的操作。 SpringData J...

    黑馬 SpringData JPA筆記

    課程鏈接:https://www.bilibili.com/video/BV1Y4411W7Rx?from=search&seid=415951199875837982 第一 orm思想 ? 主要目的:操作實體類就相當于操作數據庫表 ? 建立兩個映射關系: ? 實體類和表的映射關系 第二 hibernate框架介紹 ? Hibernate是一個開放源代碼的對象關系映射框架, ? 它對JDB...

    SpringData JPA初識

    SpringData JPA定義 ? Spring Data JPA是一種JPA的抽象層,底層依賴Hibernate,也就是給我們直接提供了訪問數據庫的能力,比如常見的CRUD操作,復雜的操作還是需要我們自己編寫。 ? SpringData除此之外可以訪問關系型數據庫也可以訪問NoSQL類型數據庫 以關系型數據庫為例 HelloWorld 1. 導入依賴 2. 配置yaml文件(因為底層是hibe...

    初識 SpringData - JPA(一)

    概念 什么是 JPA JPA(Java Persistence API ): Java 持久化規范的 API 。是 SUN 官方推出的一套基于 ORM 的規范,內部是由一系列的接口和抽象類構成。其提供了一種對象/關系映射工具來管理 Java 應用中的關系數據。 JPA 通過 JDK5.0 注解或 XML 描述 對象 - 關系表 的映射關系,并將運行期的實體對象持久化到 DB中。 持久化(Persi...

    SpringData JPA 簡介

    spring開發用來簡化數據訪問的項目 可以簡化:JPA 、MongoDB、redis、   spring data 想統一數據訪問的API 統一的Repository 接口 整合springdata JPA JPA:ORM(Object Relational Mapping) 1)、編寫一個實體類(bean)和數據表進行映射,并且配置好映射關系 2)、編寫...

    精品国产乱码久久久久久蜜桃不卡