SpringBoot+jpa配置怎么根据实体类自动创建表
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇文章主要介绍"SpringBoot+jpa配置怎么根据实体类自动创建表",在日常操作中,相信很多人在SpringBoot+jpa配置怎么根据实体类自动创建表问题上存在疑惑,小编查阅了各式资料,整理
千家信息网最后更新 2025年11月08日SpringBoot+jpa配置怎么根据实体类自动创建表
这篇文章主要介绍"SpringBoot+jpa配置怎么根据实体类自动创建表",在日常操作中,相信很多人在SpringBoot+jpa配置怎么根据实体类自动创建表问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"SpringBoot+jpa配置怎么根据实体类自动创建表"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
jpa配置根据实体类自动创建表
1.配置文件application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/bootTable?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=truespring.datasource.username=rootspring.datasource.password=123456spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.jpa.database=mysqlspring.jpa.show-sql=truespring.jpa.hibernate.ddl-auto=updatespring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
2.pom.xml引入包
org.springframework.boot spring-boot-starter-data-jpa mysql mysql-connector-java
3.编写实体类
import javax.persistence.*;import java.io.Serializable;import java.util.Objects;@Entity//声明实体类public class User implements Serializable { @Id //声明了实体唯一标识对应的属性 @GeneratedValue //自增 private Integer id; @Column(nullable = false, unique = true, length = 32) //长度32,唯一索引,nullable表示true可以为空,false不可以 //用来声明实体属性的表字段的定义 private String userName; private String passWord; private String email; private String nickName; private String regTime; @Transient //不映射成列的字段 private String desc; //省略get和set方法}4.运行项目
启动即可生成
5.针对项目启动以后数据库并未生成数据库表问题
包导的不对: import javax.persistence.*;
配置文件不对: spring.jpa.hibernate.ddl-auto=update
注解写的不对:不要忘记@Entity
…
还可能有一种原因:
Sprint的入口文件在子目录里了,应该比其他诸如service、dao、controller、entity高一级。
例如:service文件所在为com.demo.metaService,那么入口文件xxxApplication.java应该在com.demo下
jpa根据Entry自动生成表
1.加入依赖
org.springframework.boot spring-boot-starter-data-jpa
若有依赖 spring-data-jpa 则删掉,否则会出现找不到 bootstrap 之类的错误
2.配置 application.yml
增加Jpa 自动生成表的配置
spring: jpa: ##配置自动建表:updata:没有表新建,有表更新操作,控制台显示建表语句 hibernate: ddl-auto: update show-sql: true
3. 创建Entity
个人建议创建一个基础Entity,用于表中常用字段创建配合 mybatisplus,jackson,SnowFlake,lombok 等库,自行导入相关注解请自行了解
BaseEntry.java
@Data//省略setget方法@MappedSuperclass //标注父类@EntityListeners(AuditingEntityListener.class) //jpa数据监听@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"}) //忽略解析的字段public abstract class BaseEntry implements Serializable{ private static final long serialVersionUID = 1L; @Id @TableId @ApiModelProperty(value = "唯一标识") private String id = String.valueOf(SnowFlakeUtil.getFlowIdInstance().nextId()); @ApiModelProperty(value = "创建者") @CreatedBy private String createBy; @CreatedDate @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "创建时间") private Date createTime; @ApiModelProperty(value = "更新者") @LastModifiedBy private String updateBy; @LastModifiedDate @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新时间") private Date updateTime; @ApiModelProperty(value = "删除标志 默认0") @TableLogic private Integer delFlag = CommonConstant.STATUS_NORMAL;}业务Entry ,仅做参考
/** * tb_bussiness_up_record实体类 * * @author * */@Data@Entity@Table(name = "tb_bussiness_up_record")@TableName("tb_bussiness_up_record")public class TbBussinessUpRecord extends BaseEntry { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "经销商") private String bussinessId; @ApiModelProperty(value = "审核时间") @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private String auditTime;}到此,关于"SpringBoot+jpa配置怎么根据实体类自动创建表"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
实体
配置
文件
字段
学习
生成
不对
数据
方法
时间
更新
入口
属性
数据库
更多
标识
注解
自动生成
问题
项目
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
新乡网通dns服务器地址是什么
网络安全教育体会心得九十字
手机原神换服务器怎么换
维护网络安全所采取的措施
网络安全教育简报小学
柬埔寨软件开发28k
网络技术人员叫什么
网络技术基础体会
阳泉学校触摸签名软件开发公司
苹果服务器订阅
嵌入式系统与软件开发
答辩时老师会看数据库吗
淮北矿业集团网络安全培训
数据库服务器端
网络安全宣传活动安排
查询数据库返回多个值
关于学校学生网络安全的提议
加强智能网联汽车网络安全
安广网络技术中心
20安全服服务器人数已满
网络技术应用商业模式
新华三网络安全产品负载均衡
南京公安局网络安全
公司网站更换服务器流程
枞阳天气预报软件开发
nb iot网络技术
怎么登海康视频服务器
绿丰网络技术有限公司
数据库er图关系模式题库
数据库建库顺序