SpringData Jpa自動建表配置以及問題
阿新 • • 發佈:2019-01-08
在使用Springboot + JPA的專案中 使用了JPA的自動建表功能 專案的配置方法如下:
Maven專案依賴配置
在pom.xml檔案中引入
<!-- maven依賴 -->
<dependencies>
<!-- 配置資料庫依賴 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency >
<!-- 配置JPA元件 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
屬性配置
在application.properties檔案中配置如下:
spring.datasource .url=jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#配置自動建表
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
配置實體類檔案
在建立與表對應的實體類檔案User.java
@Entity(name = "user")
public class User {
@Id
@GeneratedValue
private Integer id;
@Column
private String username;
@Column
private String password;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
這樣 在SpringBoot專案啟動的時候就能自動更新資料庫表單結構了
要注意的問題
我自己在使用的過程中 出現過建表失敗的情況 具體原因是使用了order的表單名
這是mysql 的關鍵字 因此無法建表 更改表單名稱即可解決問題