javascript
SpringDataJpa使用示例
主要講解四點:
1、SpringDataJpa原理及查詢和修改操作(理解原理,能說出來,會用)
2、datagrid使用及分析(會用)
3、收派標準分頁列表查詢實現及修改功能(重點)
4、快遞員添加、分頁列表查詢、Specification實現分頁列表帶條件查詢(重點)
一、SpringDataJpa原理分析和基本API(重點)
1、Spring Data????
Spring Data 出現就是為了簡化、統一持久層的各種實現技術API
Spring Data 提供一套標準API和不同持久層整合技術實現
2、spring-data-commons與spring-data-jpa
spring-data-commons 一套標準API
spring-data-jpa 基于整合jpa實現
自己開發Repository只需要繼承JpaRepository接口
CrudRepository
save、delete、deleteAll、findAll、findOne、count
PagingAndSortingRepository
findAll(Sort) 基于排序的查詢、findAll(Pageable)基于分頁的查詢
二、SpringDataJpa查詢Query的使用(會用)
第一種:根據方法命名規則自動生成
基于一列等值查詢 findBy列名 例如:findByName(String name)
// 根據收派標準名稱查詢
public List<Standard> findByName(String name);
基于一列模糊查詢findBy列名Like 例如:findByNameLike(String name)
基于兩列等值查詢findBy列名And列名 例如:findByUsernameAndPassword(String username,String password)
第二種:不按命名規則寫的查詢方法,可以配置@Query綁定JPQL語句或者SQL語句
@Query(value="from Standard where name = ?" ,nativeQuery=false)
????// nativeQuery 為 false 配置JPQL,在這里其實就是寫HQL 、 為true 配置SQL
????public List<Standard> queryName(String name);
第三種:不按命名規則寫的查詢方法,配置@Query,沒寫語句,實體類@NamedQuery定義
@Query
????public List<Standard> queryName2(String name);
@NamedQueries({
????@NamedQuery(name="Standard.queryName2",query="from Standard where name=?")
})
三、SpringDataJpa修改操作Query使用(會用)
@Query注解完成,搭配使用@Modifying標記修改、刪除操作
@Query(value="update Standard set min·Length=?2 where id =?1")問號后數代表參數占位符
@Modifying
publicvoid updateMinLength(Integer id , Integer minLength);
Junit單元測試,要添加事務,設置事務不回滾
@Test
@Transactional
@Rollback(false)
publicvoid testUpdate(){
standardRepository.updateMinLength(1, 3);
}
四、數據表格datagrid簡單使用(會用)
1、table指定id="grid"
2、$("#grid").datagrid({…}); 完成對表格設置????
columns:表格列定義
url:遠程數據加載
pagination:true顯示分頁欄datagrid底????????
toolbar:頂部工具欄
參照10.html
五、數據表格datagrid分頁原理分析(理解)
page size
請求數據:page頁碼、rows每頁記錄數(每頁顯示幾條數據)
響應數據:total:總記錄數、rows當前頁數據記錄
收派標準分頁列表查詢實現(能實現)
2、在StandardAction添加pageQuery方法,頁面會自動發送兩個請求參數page頁碼和 rows每頁記錄數
Action代碼:
pom.xml導入json插件
業務層代碼
實現代碼
Spring data jpa提供分頁查詢方法,接受Pageable參數
Spring data提供PageRequest對象實現Pageable接口
注意PageRequest的page頁面從0開始所以要page-1
七、收派標準修改功能實現(能實現)
1、點擊修改按鈕,獲取datagrid選中的一行數據
2、將選中數據回顯form表單
使用jquery easyui 提供form對象
提供隱藏字段 (id隱藏,用于傳參數)
八、第三天主要內容概述
1、快遞員管理,依賴收派標準選擇(多表關聯插入)
2、快遞員分頁列表查詢
3、區域批量數據導入 Excel讀寫工具 Apache POI、文件上傳
4、基于條件分頁查詢功能實現Spring Data JPA 條件分頁查詢
九、添加快遞員加載收派標準列表(能實現)
1、快遞員管理功能介紹
快遞員添加功能思路:
1)jQuery Easyui Window窗口
2)jQuery Easyui form 客戶端表單驗證
3)Spring Data JPA 提供save方法
2、收派標準列表顯示
1)input控件
url獲取列表數據、textField 顯示內容字段名、valueField生成選項value屬性依據字段名
2)編寫StandardAction提供findAll方法
3)編寫業務層方法
十、添加快遞員服務器功能實現(能實現)
快遞員添加功能(多表操作)介紹
3、使用jQuery easyui的form校驗功能
6、編寫DAO業務接口
十一、快遞員無條件分頁查詢實現(能實現)
1)datagrid在頁面加載后,會自動向url地址發送一次請求
傳遞參數page當前頁碼和rows每頁顯示的記錄數到服務器
????????4)將Page中數據封裝自定義Map集合total和rows轉換json返回客戶端
2、實現步驟:
????????1)修改courier.html中的datagrid url地址
????????2)編寫CourierAction中的pageQuery方法
????????
????????3)編寫業務層實現
分析:需不需要加載集合對象,@JSON注解排除不需要加載屬性
十二、快遞員條件分頁查詢請求參數提交(能實現)
1、制作查詢按鈕,點擊按鈕顯示快遞員查詢表單(窗口)
2、將查詢窗口條件,綁定到數據表格上,讓數據表格在發送請求時,自動攜帶條件
查詢jquery easyui datagrid 數據表格api
1)先將頁面form表單數據,轉換{key:value,key:value}格式
查看jquery
2)基于自定義方法,完成將form參數轉換為json綁定到datagrid上
3)查詢條件和分頁查詢參數一起發送給服務器端
十三、使用Specification實現條件分頁查詢(能實現)
思路:
3、修改CourierAction的pageQuery方法,添加條件查詢邏輯操作????????
4、修改Service代碼
實現
5、修改DAO接口,繼承JpaSpecificationExecutor接口
JpaSpecificationExecutor接口
Specification接口對象:條件查詢對象
Pageable接口對象:代表分頁查詢對象
總結
以上是生活随笔為你收集整理的SpringDataJpa使用示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jQuery easyUI--数据表格
- 下一篇: SpringData Jpa、Hiber