我的 Spring Boot 2.6 项目有两个不同的数据源,但我希望有两个不同的 AuditorAware 实现(每个数据源一个)。
如您所知,项目中只能有一个 @EnableJpaAuditing 注解,并且在其中只能引用一个 AuditorAware bean:
@EnableJpaAuditing(auditorAwareRef="auditorAwareImplBean")
我需要为一个数据源数据库实体提供一个返回名称的
getCurrentAuditor()
实现,为第二个数据源提供一个返回电子邮件的 getCurrentAuditor()
实现。
我尝试创建另一个 AuditorAware 实现,然后在每个数据源配置上设置
@EnableJpaAuditing
注释,但出现重复的 bean 错误(每个项目只能有一个 @EnableJpaAuditing
。
审计字段与我的所有实体位于单独的
@MappedSupeclass
上,审计字段用 @Createdby
和 @LastModifiedBy
进行注释。
我不想改变这种方法(改变实体等等)。有什么推荐的方法吗?