java jpa 自动生成,SpringBoot JPA实践之自动生成Entity

SpringBoot JPA实践之自动生成Entity,也可以说是IntelliJ IDEA反向生成Javabean,具体的实现可参考之前有一篇名为《IntelliJ IDEA反向生成Javabean(锲合度100%)》的分享(本站右上角的关键字搜一搜),它的实现是满足个人日常使用MybatisPlus + lombok + Swagger完美结合,类与字段的注释均为动态获取,由于本次使用到JPA,故在深入之前,将之前的基于MybatisPlus的实现修改为使用JPA的Entity动态实现,套路一样,仍然是采用IntelliJ IDEA + Groovy语言实现,IDEA配置Database的详细过程参考前面的,重点在于Generate POJOs.groovy文件的代码,具体如下。

Generate POJOs.groovy

1587486246740053533.png.image

生成Entity文件示例

1587486374381020978.png.image

【Entity生成细节】

(1)通过设置后使用IDEA自带的工具一键生成;

(2)选择生成的文件需要存放的代码包路径;

(3)动态获取生成Entity的package路径(依赖选择的包路径中含有maven项目的src\main\java路径);

(4)导入生成Entity文件的最基本依赖,参考“Entity生成范围”的基本类库;

(5)支持数据库名称与Java名称转换,如将数据库的匈牙利转换为Java的驼峰命名;

(6)支持数据库类型与Java类型转换,如将int转Integer、bigint转Long、date转Date等;

(7)主键生成策略采用JPA的“全局唯一ID uuid”的方式,约定从数据库表字段的注释中获取含有“主键ID”字样的列,约定此时为主键列,也有见到使用默认第一个字段的列约定为主键列的,但一些关系表中有的时候不需要创建主键列的情况,总之,我这里的默认规则如此;

(8)动态生成注释参数,如@author、@date、及类的说明(来自数据库表的说明);

(9)动态生成字段类型、名称、ApiProperty注释(来自数据库表字段的说明);

(10)支持需要导入类的非基本类型,如java.util.Date、java.io.InputStream等;

(11)结合lombok插件,不生成get/set属性方法;

(12)生成文件使用UTF-8编码,并且支持其中的中文;

下载地址

https://gitee.com/88911006/chendd-examples/blob/master/chendd-blog-Table2JavaBean/src/main/resource

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值