我有多个"微服务" Spring Boot应用程序。每个人都拥有自己的包结构,可以独立运行。每个人都可能拥有自己的@EntityScan,具体取决于我是否可以使用基本软件包技巧中的自动配置。
当我尝试将它们组合到一个Spring Boot应用程序中时,单独的@EntityScan注释是否会得到尊重?我现在没有看到这种行为。它似乎只尊重一个@EntityScan然后我让可怕的无法自动装配自定义存储库,因为它的JPA实体不存在。
Spring Boot 1.2.3-RELEASE
答案 0 :(得分:2)
它们可能都得到了评估,但看起来像bean后处理器(参见EntityScanRegistrar.class
)只会覆盖在EntityManager
bean上的packagesToScan的先前值,这不是你想要的。
你可以很容易地编写自己的bean post处理器,它可以构建一个来自所有@EntityScan
注释的组合列表。
您也可以相对简单地手动配置EntityManager bean,或者更简单地说,使用Spring @Profile
功能有选择地启用和禁用@Configuration
类注释@EntityScan
的类运行组合服务。