【问题标题】:Does Spring Data JDBC support inheritanceSpring Data JDBC 是否支持继承
【发布时间】:2020-03-06 10:32:11
【问题描述】:

我正在使用 spring data jdbc 开发一个新项目,因为它非常易于处理并且确实很棒。

在我的场景中,我有三种(未来可能更多)类型的projects。所以我的领域模型可以很容易地用普通的旧 java 对象使用类型继承来建模。

第一个问题:

  • 当我使用 Spring Data jdbc 时,这种方式(继承)是否像在 JPA 中一样支持?

第二个问题 - 作为第一个问题的补充:

  • 我在官方文档中找不到任何关于此的内容。所以我假设有充分的理由不支持它。说到这一点,我可能是在错误的轨道建模实体与继承?

【问题讨论】:

    标签: spring-data-jdbc


    【解决方案1】:

    目前 Spring Data JDBC 不支持继承。

    这样做的原因是继承使事情变得相当复杂,而且完全不清楚正确的方法是什么。

    我有几个模糊的想法,即如何创建可用的东西。每种类型使用不同的存储库是一种选择,使用单一类型进行持久化,但在读取时进行一些后处理以获得正确的类型是另一种选择。

    【讨论】:

    • 我有一个通过 JPA 和休眠实现继承的用例。这是一个遗留案例,我不得不从一位前同事那里采用。它使用鉴别器值。我对此并不满意,因为所有类型的(不一定相关的)数据都在一个表中。也许每个类型/类的表会更好。反正。我同意你的观点“......继承使事情变得相当复杂”。因此,我将继续在没有继承的情况下对该项目进行编码(至少在我的实体上)。
    • 我正在寻找类似的功能,但继承仅在嵌套对象中 - 聚合根只是一种类型,但具有多态实体。有什么解决办法吗?似乎自定义转换器不起作用,或者至少我无法提出可行的解决方案。
    • 你能提出一个正确的问题吗?
    猜你喜欢
    • 1970-01-01
    • 2017-06-16
    • 2019-03-13
    • 2016-03-25
    • 2019-01-26
    • 2016-11-13
    • 2019-04-06
    • 2018-06-20
    • 1970-01-01
    相关资源
    最近更新 更多