【发布时间】:2019-10-05 03:10:31
【问题描述】:
我有一个带有数据库的遗留应用程序,该数据库将数据拆分为同一物理数据库上的多个模式。这些模式在结构上是相同的。
我使用一个使用 Spring Boot Data JPA 的微服务来处理单个模式。然后为了避免代码重复,我创建了一个路由器服务,将请求转发到单个模式微服务副本,每个副本都有不同的数据库连接。但我发现这有点矫枉过正(但有效)
我正在尝试将其缩减为单个微服务。我还没有成功,但我使用schema 属性设置了表。
@Table(
name = "alerts",
schema = "ca"
)
但是,当我尝试进行继承和@MappedSuperclass 以减少代码重复时,它会感到困惑。
此外,@OneToMany 会因为继承错误而分崩离析,例如 X references an unknown entity: Y
基本上有一种在 JPA 上使用继承的方法,它使用相同的表结构,不同之处只是模式,无需复制和粘贴太多代码。理想情况下,我只想将“模式”参数传递给 DAO,它会以某种方式为我做到这一点。
【问题讨论】:
标签: spring jpa spring-data microservices