登录
推荐 文章 Go 技术 课程 下载 专题 AI
首页 >  数据库 >  MySQL

在mysql8.0版本上用JPA初始化数据表的操作流程

来源:SegmentFault

时间:2023-02-25 07:45:17 162浏览 收藏

有志者,事竟成!如果你在学习数据库,那么本文《在mysql8.0版本上用JPA初始化数据表的操作流程》,就很适合你!文章讲解的知识点主要包括MySQL、Java,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

第一步——配置依赖

    mysqlmysql-connector-javaruntimeorg.springframework.bootspring-boot-starter-web

第二步——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...

本篇关于《在mysql8.0版本上用JPA初始化数据表的操作流程》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表