JPA全稱Java Persistence API.JPA經過JDK 5.0註解或XML描述對象-關係表的映射關係,並將運行期的實體對象持久化到數據庫中。java
JPA 的目標之一是制定一個能夠由不少供應商實現的API,而且開發人員能夠編碼來實現該API,而不是使用私有供應商特有的API。mysql
JPA是須要Provider來實現其功能的,Hibernate就是JPA Provider中很強的一個,應該說無人能出其右。從功能上來講,JPA就是Hibernate功能的一個子集。spring
添加spring-boot-starter-jdbc依賴:sql
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa </artifactId> </dependency>
添加mysql鏈接類和鏈接池類:數據庫
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 username: root password: 123456 jpa: hibernate: ddl-auto: update # 第一次簡表create 後面用update show-sql: true
注意,若是經過jpa在數據庫中建表,將jpa.hibernate,ddl-auto改成create,建完表以後,要改成update,要否則每次重啓工程會刪除表並新建。架構
經過@Entity 代表是一個映射的實體類, @Id代表id, @GeneratedValue 字段自動生成app
@Entity public class Account { @Id @GeneratedValue private int id ; private String name ; private double money; ... 省略getter setter }
數據訪問層,經過編寫一個繼承自 JpaRepository 的接口就能完成數據訪問,其中包含了幾本的單表查詢的方法,很是的方便。值得注意的是,這個Account 對象名,而不是具體的表名,另外Interger是主鍵的類型,通常爲Integer或者Long分佈式
public interface AccountDao extends JpaRepository<Account,Integer> { }
Spring Cloud大型企業分佈式微服務雲架構源碼請加企鵝求求:一七九一七四三三八零ide