一、先了解下什麼是JPA
JPA(Java Persistence API)是Sun官方提出的Java 持久化規範, 它爲 Java 開發人員提供了一種對象/關聯映射工具來管理 Java 應用中的關係數據。它的出現主要是爲了簡化現有的持久化開發工作和整合 ORM 技術,結束現在 Hibernate,TopLink,JDO 等 ORM 框架各自爲營的局面。 對持久化規範可以理解爲 “持久化” 和 “規範”.
比較專業說法: 持久化(Persistence),即把數據(如內存中的對象)保存到可永久保存的存儲設備中(如磁盤)。持久化的主要應用是將內存中的對象存儲在的數據庫中,或者存儲在磁盤文件中、XML數據文件中等等。
持久化是將程序數據在持久狀態和瞬時狀態間轉換的機制
- 所謂的規範意指明文規定或約定俗成的標準。如:道德規範、技術規範,公司管理規範。 如果沒有一個規範來進行約束,那麼一些新出現的框架,就會隨意的按照自己的標準來,那麼我們開發者在開發的是應該遵從那個標準喃?我們就不能很好的去關注自身業務了。其他的相關內容這裏就不在贅述了請自行了解。
springboot jpa 是 Spring 基於 ORM 框架、Jpa 規範的基礎上封裝的一套 Jpa 應用框架,可使開發者用極簡的代碼即可實現對數據的訪問和操作。它提供了包括增刪改查等在內的常用功能,且易於擴展!學習並使用 Spring Data Jpa 可以極大提高開發效率!Spring Boot Jpa 讓我們解脫了 DAO 層的操作,基本上所有 CRUD 都可以依賴於它來實現
二、spring boot jpa 基本使用
1、先在pom中引入springboot jap 依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
2、建立實體類
3、定義 數據訪問層接口 UserRepository 然後繼承 jpaRepository<User,long> , 在寫添加方法時 修改通過@Query註解加上 , nativeQuery = true 來 使用原生SQL ,如果不使用 就是HQL。
在編寫查詢語句時 idea 會有相關 jpa 語法提示
4、編寫service 接口
5、編寫相關實現類
6、編寫控制層
7、模擬請求添加操作
http://localhost:8081/user/saveUser
8、在使用restful 風格請求時, 通過@PathVariable 註解來綁定,前端傳入參數個數如下
http://localhost:8081/user/findById/3
9、 注意在使用jpa 時,在查詢數據時 需要通過@Param 參數進行判斷查詢,必須同這個註解進行綁定
如果沒有通過註解綁定那麼就會報下面的錯。
10、重寫了一個UserRedirectController 通過 @Controller 註解來進行重定向
11、請求http://localhost:8081/indexRedirect ,那麼就會跳轉到下面的頁面,在下面就可以進行簡單 的操作了
12、
application.properties 配置
注意:要在在pom文件添加依賴
項目地址:https://github.com/liu92/learn