记录—JPA生成数据库表

时间:2022-06-14 23:12:38

环境

  springBoot JPA MySQL

application-dev.yml

注意:配置中的blog数据库需要先创建,否则启动springBoot会报错

 1 spring:
 2 #数据库连接配置
 3   datasource:
 4     driver-class-name: com.mysql.jdbc.Driver
 5     url: jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=utf-8
 6     username: root
 7     password: 123
 8   jpa:
 9     hibernate:
10       ddl-auto: update
11     show-sql: true

pojo(实体类)、数据库关系结构

多对一、一对多:多的一方作为关系维护方,少的作为关系被维护方

1.Blog

 

@Entity //标记类为数据库实体类
@Table(name = "front_blog") //指定与数据库哪个表对应
public class Blog {
/*
    @Id:指定主键
    @GeneratedValue:
        指定主键生成策略
        不设置参数则按照默认的策略-AUTO,那么在数据库中会多生成一张表用于记录各个表的主键
*/
    @Id 
    @GeneratedValue 
    private Long id;
    private String title;
    private String content;
    private String firstPicture;
    private String flag; //标记:原创、转载、翻译
    private Integer views; //浏览次数
    private boolean appreciation; //赞赏是否开启
    private boolean shareStatement; //版权是否开启
    private boolean recommend; //评论是否开启
    private boolean commentabled; //是否推荐文章
    @Temporal(TemporalType.TIMESTAMP) //Java系统生成时间 转换为 数据库时间类型
    private Date createTime;
    @Temporal(TemporalType.TIMESTAMP)
    private Date updateTime;

    //实体类关系:多个blog对应一个type,多的一方是维护端
    @ManyToOne
    private Type type;

 

2.Type

记录—JPA生成数据库表

 

 

 多对多,可以指定自己想要的关系维护方和关系被维护方

3.Blog和Tag

记录—JPA生成数据库表

 

 

 

至此,创建实体类,并且在类中指定关系结构无误之后,启动springBoot项目,程序自动生成数据库结构进入数据库