场景描述
公司项目升级为SpringBoot项目,新加入框架JPA,JPA自带的功能可以自动更新createdDate,createdBy,lastModifiedBy,lastModifiedDate这四个字段,但公司原有框架对应的字段为createDate,createId,updateId,updateDate,修改公司原有框架中的关于创建时间、更新时间的代码显然不科学,考虑过后决定override JPA中关于这几个字段的源码。
重写JPA相关代码
spring-data-commons:1.13.0.RELEASE
第一步:annotation改写 原来annotation与改写的annotation:
@Retention(RetentionPolicy.RUNTIME)
@Target(value = { FIELD, METHOD, ANNOTATION_TYPE })
public @interface CreatedBy {
}
重写为
``` java
@Retention(RetentionPolicy.RUNTIME)
@Target(value = { FIELD, METHOD, ANNOTATION_TYPE })
public @interface CreatedBy {
}
第二步:所有要改写的文件
替换所有createDate,createId,updateId,updateDate
大功告成!顺利对接原有框架和数据库