环境

  springBoot+JPA+MySQL

application-dev.yml

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

 spring:
#数据库连接配置
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=utf-8
username: root
password: 123
jpa:
hibernate:
ddl-auto: update
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

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

3.Blog和Tag

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

记录—JPA生成数据库表的更多相关文章

  1. Mybatis总结之如何自动生成数据库表结构

    一般情况下,用Mybatis的时候是先设计表结构再进行实体类以及映射文件编写的,特别是用代码生成器的时候. 但有时候不想用代码生成器,也不想定义表结构,那怎么办? 这个时候就会想到Hibernate, ...

  2. hibernate笔记--通过SchemaExport生成数据库表

    方法比较简单,项目中只需要两个java类(一个实体类,如User,一个工具类),两个配置文件(hibernate必须的两个配置文件hibernate.cfg.xml,与User.hbm.xml),即可 ...

  3. (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句

    (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句 在我们RDIFramework.NET代码生成器中,有这样一个应用,就是通过数据库表自动生成表的CREA ...

  4. 【工具篇】利用DBExportDoc V1.0 For MySQL自动生成数据库表结构文档

    对于DBA或开发来说,如何规范化你的数据库表结构文档是灰常之重要的一件事情.但是当你的库,你的表排山倒海滴多的时候,你就会很头疼了. 推荐一款工具DBExportDoc V1.0 For MySQL( ...

  5. 利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句

    利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句 (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句 在我们RDIFram ...

  6. Hibernate生成数据库表

    首先创建实体类 import java.util.Date; public class ProductionEntity { public Integer getId() { return id; } ...

  7. Python3:Django根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete'

    Python3:Django根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete' 一.分析 在 ...

  8. PowerDesigner生成数据库表和逆向生成表结构(MySQL数据库)

    一.Download Connector/ODBC下载ODBC驱动,地址:https://dev.mysql.com/downloads/connector/odbc/, 需要注意:PowerDesi ...

  9. (3)PyCharm中Flask工程逆向生成数据库表

    一.创建数据库 在mysql数据库中创建名为"movie"的数据库. 二.安装SQLAlchemy 三.安装PyMySQL 四.创建数据模型 在app/models.py中编写数据 ...

随机推荐

  1. opencv:图像查找表 与 颜色表

    LUT 使用 颜色查找表 example LUT applyColorMap // 读入制作好的lut.png Mat color = imread("D:/images/lut.png&q ...

  2. opencv:图像的算术操作

    前提:输入图像的大小和类型必须一致 越界处理: 大于255,则会减去255 小于0,则等于0 基本计算,加减乘除 #include <opencv2/opencv.hpp> #includ ...

  3. [转]工作量证明(PoW)权益证明(PoS)和委任权益证明(DPoS)区别

    原文链接 Both in the glossary and in some of our previous posts we've touched on mining and the two main ...

  4. template-组件封装

    HTML: //:ligit='ligit' 一致 <div id='app'> <template-swiper :ligit='ligit'></template-s ...

  5. Flask - g变量

    传送门 http://flask.pocoo.org/docs/1.0/appcontext/#storing-data http://flask.pocoo.org/docs/1.0/appcont ...

  6. Fluent_Python_Part2数据结构,02-array-seq,序列类型

    1. 序列数据 例如字符串.列表.字节序列.元组.XML元素.数据库查询结果等,在Python中用统一的风格去处理.例如,迭代.切片.排序.拼接等. 2. 容器序列与扁平序列 容器序列:容器对象包含任 ...

  7. QAction菜单行为

    /*File*/ QAction* close_action_; /*File*/ QAction* close_action_;

  8. C语言函数不能返回数组,但可以返回结构体

    为什么C语言函数可以返回结构体,却不可以返回数组?有这样的问题并不奇怪,因为C语言数组和结构体本质上都是管理一块内存,那为何编译器要区别对待二者呢? C语言函数为什么不能返回数组? 在C语言程序开发中 ...

  9. oracle误操作表数据--回退(闪回)被提交后的数据

    // 查询该时间段 这个表的状态 (就是表状态正常的时刻 下面的时间仅用于举例) select * from 表名 as of timestamp to_timestamp('2019-09-26 1 ...

  10. Python笔记3

    类格式示例: class Student(): name = '' age = 0 def print_file(self): print('name:' + self.name) print('ag ...