第一步——配置依赖
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
第二步——application.properties 设置配置文件
spring.datasource.url=jdbc:mysql://${MYSQL_HOST:127.0.0.1}:3306/yunzhi_spring_boot?useSSL=false
spring.datasource.username=root
spring.datasource.password=000000
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver //MySQL 8 的spring.datasource.driver-class-name配置需要改为“com.mysql.cj.jdbc.Driver”
spring.jpa.hibernate.ddl-auto=update
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect //在application.properties配置数据库引擎为InnoDB
hbm2ddl.auto有四个属性:
- create:每次加载 hibernate 时都会删除上一次的生成的表,然后根据你的 module 类再重新来生成新表,哪怕两次没有任何改变也要这样执行(也就是删除->创建->执行)
- create-drop :每次加载 hibernate 时根据 model 类生成表,程序终止时,表就自动删除。
- update:最常用的属性,第一次加载 hibernate 时根据 model 类会自动建立起表的结构(前提是先建立好数据库),以后加载 hibernate 时根据 model 类自动更新表结构,即使表结构改变了,但表中的行仍然存在,不会删除以前的行。要注意的是当部署到服务器后,表结构是不会被马上建立起来的,是要等应用第一次运行起来后才会。(没表->创建->操作 | 有表->更新没有的属性列->操作]
- validate:每次加载 hibernate 时,验证创建数据库表结构,只会和数据库中的表进行比较,不会创建新表,但是会插入新值。(启动验证表结构->验证不成功->项目启动失败)
第三步——创建实体类
@Entity
public class Teacher {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private Boolean sex;
private String username;
private String email;
private Long createTime;
private Long updateTime;
public Teacher() {
}
......省略get/set方法
}
第四步——重新启动后台,此时数据库已经完成了相应操作
如果想要知道更详细的流程,推荐观看 https://segmentfault.com/a/11...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。