在说具体如何在spring boot 使用Hibernate前,先抛装引玉些知识点?什么是JPA呢?
JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。
接下里就说本文章重点了,那么怎么操作呢?只需要如下配置就可以了?
pom.xml配置:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
application.properties配置:
########################################################
###datasource
########################################################
spring.datasource.url = jdbc:mysql://localhost:3309/springboot?characterEncoding=utf8&useSSL=true
spring.datasource.username = root
spring.datasource.password = AKE124
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.max-active=20
spring.datasource.max-idle=8
spring.datasource.min-idle=8
spring.datasource.initial-size=10
########################################################
### Java Persistence Api
########################################################
# Specify the DBMS
spring.jpa.database = MYSQL
# Show or not log for each sql query
spring.jpa.show-sql = true
# Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto = update
# Naming strategy
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
# stripped before adding them to the entity manager)
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
那么就可以使用Hibernate带来的好处了,在实体类注解@Entity就会自动进行表的DDL操作了。
我们在com.mxh.web.bean.UserDo 中加入注解:@Entity:
@Entity
@Table(name="user")
public class UserDo {
@Id @GeneratedValue
private Integer id;
private String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
这时候运行就会在数据库看到user表了。