【问题标题】:jhipster - JPA entity with self referencejhipster - 具有自引用的 JPA 实体
【发布时间】:2015-08-31 13:21:20
【问题描述】:

我正在尝试 jhipster,我想知道如何在实体中定义自引用。 类似的东西:“主题”有一个将自己称为父或子的字段。通过生成器,我没有看到这样做的可能性。

这就是为什么我生成了一个主题实体并自己在实体中添加了一个字段,但是,liquibase 似乎没有接收到实体中的更改。

阅读文档,似乎 jhipster 中的 topic.json 文件已为此解析,但是,它不支持自引用。所以我有点卡在这里。

有什么想法可以实现我想要的吗?

谢谢, 斯文

【问题讨论】:

    标签: jpa jhipster self-reference


    【解决方案1】:

    liquibase 使用变更日志创建数据库表。 查看资源/config/liquibase/changelog 文件夹 应该有一个名为“201531081212_added_entity_Topic.xml”的文件

    当您添加属性时,您必须更改此更改日志的表描述。

    通常,在添加/删除列或表时创建一个新的附加变更日志会更好。这应该包含以下内容:

    <addColumn tableName="TOPIC">
        <column name="topic_id" type="bigint"/>
    </addColumn>
    

    或 parent_id 或您在实体类中如何命名该字段。

    作为 maven liquibase 插件的一部分,也有一些 maven 目标来生成新的变更日志。

    jhipster 还不能很好地支持更改/迁移实体...

    【讨论】:

    • 所以你是说在 changelog 文件夹中添加迁移是保存的,它们不会被覆盖?特别是如果我正在制作自己的变更日志?
    • 是的,您可以在此处放置其他更改日志。您必须将它们包含在 master.xml 文件中。 Jhipster 只会在此处附加新的变更日志(对于新实体),或者它会在覆盖之前询问您(如果已经有实体的变更日志)。所以添加额外的变更日志是最好的选择
    猜你喜欢
    • 2016-07-20
    • 1970-01-01
    • 2019-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多