jpa(j**a persistence api)是sun官方提出的j**a持久化規範。它為j**a開發人員提供了一種物件/關聯對映工具來管理j**a應用中的關係資料。他的出現主要是為了簡化現有的持久化開發工作和整合orm技術,結束現在hibernate,toplink,jdo等orm框架各自為營的局面。值得注意的是,jpa是在充分吸收了現有hibernate,toplink,jdo等orm框架的基礎上發展而來的,具有易於使用,伸縮性強等優點。從目前的開發社群的反應上看,jpa受到了極大的支援和讚揚,其中就包括了spring與ejb3.0的開發團隊。jpa是一套規範,不是一套產品,那麼像hibernate,toplink,jdo他們是一套產品,如果說這些產品實現了這個jpa規範,那麼我們就可以叫他們為jpa的實現產品。
spring data jpa 是 spring 基於 orm 框架、jpa 規範的基礎上封裝的一套jpa應用框架,可使開發者用極簡的**即可實現對資料的訪問和操作。它提供了包括增刪改查等在內的常用功能,且易於擴充套件!學習並使用 spring data jpa 可以極大提高開發效率!spring data jpa讓我們解脫了dao層的操作,基本上所有crud都可以依賴於它來實現,自己寫個倉儲介面後繼承jparepository即可實現最基本的增刪改查功能!
1 在build.gradle檔案中新增包引用
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('mysql:mysql-connbulocrifector-j**a')程式設計客棧
2 在source的配置檔案中新增mysql和jpa的相關設定
spring:
datasource:
url: jdbc:mysql:
username: root
password: root
driver-class-name: com.mysql.jdbc.driver
jpa:
database: mysql
show-sql: true #顯示後台處理的sql語句
hibernate:
ddl-auto: update #自動檢查實體和資料庫表是否一致,如果不一致則會進行更新資料庫表
3 新增資料庫表實體,注意一些註解,@entity表示資料表實體,@table可以指定資料表名稱,@id表示是主鍵,@generatedvalue主鍵公升成規則,@column表示資料列名稱等等。
import j**ax.persistence.column;
import j**ax.persistence.entity;
import j**ax程式設計客棧.persistencebulocrif.generatedvalue;
import j**ax.persistence.generationtype;
import j**ax.persistence.id;
import j**ax.persistence.table;
import lombok.data;
@data
@entity
@table(name = "user")
public class user
4 為資料表實體新增倉儲介面,因為jpa已經有了自己的標準例項,所以簡單的curd程式設計客棧例項我們不需要寫了,如果有個性化的操作,再去定義介面和實現。
import com.example.springdemo.model.user;
import org.springframework.data.jpa.repository.jparepository;
public inte***ce sqluserrepository extends jparepository
5 最後在controller中新增依賴注入的字段,一般使用@autowired即可
@restcontroller
@requestmapping("/mysql")
public class mysqlcontroller }總結
本文標題: spring boot jpa如何把orm統一起來
本文位址:
Spring Boot JPA 命名規則
一 常用規則速查 1 and 並且 2 or 或 3 is,equals 等於 4 between 兩者之間 5 lessthan 小於 6 lessthanequal 小於等於 7 greaterthan 大於 8 greaterthanequal 大於等於 9 after 之後 時間 10 be...
SpringBoot JPA常用註解
就像 table註解用來標識實體類與資料表的對應關係類似,column註解來標識實體類中屬性與資料表中字段的對應關係。column name broker id columndefinition bigint 11 nullable false private long brokerid id co...
Spring Boot JPA訪問Mysql示例
上篇演示了通過m en構建spring boot 專案,引用web模組啟動應用,完成簡單的web 應用訪問,本章內容在此基礎上面加入資料訪問與埠修改,下文 與演例 本用例純手工測試通過,放心入坑 修改預設埠 在src main resources下加入application.properties內容...