繁体   English   中英

JHipster:使用JHipster域语言(JDL)生成MongoDB实体

[英]JHipster : Generate MongoDB entities with JHipster Domain Language (JDL)

我正在尝试将MongoDB数据库用于JHipster。 对于我的示例,我想存储书籍。 为此,我想使用JDL格式来生成实体,存储库,服务,dtos ...

这是我实际的JDL文件:它可以正常工作:

entity Book {
    name String required
    date LocalDate required
}

dto all with mapstruct
paginate all with pager
service all with serviceImpl

现在,我想补充一下Author可以写一Book的概念。

我可以添加一个实体Author

entity Author {
        firstane String required
        lastname LocalDate required
    }

我的具体问题是:如何关联AuthorBook

该文档包含以下示例:

relationship OneToMany {
  Author{book} to Book{writer(name) required}
}

但这不起作用,因为NoSQL数据库不支持关系。 那么,我该如何实现呢?

谢谢。

您尚未确切说明要对实体执行的操作。 使用NoSQL数据库,这成为一个更重要的问题。 假设您想将一个作者及其所有书籍作为一个文档返回。

以下是一些选项:

  • 在JHipster中有两个没有正式关系的独立实体。 创建一个服务 ,该服务使用“作者存储库”查找作者,并使用“书籍存储库”获取具有相同作者ID的书籍。
  • 在JHipster中只有一个Author实体。 将书籍建模为每个Author 的嵌入文档数组 不幸的是,JHipster似乎不允许您将列表类型定义为实体字段,因此您必须将其自己添加到Java代码中。
  • 您可能可以使用mongodb 3.2中的$lookup功能来获取给定作者的书。 在这种情况下,spring-data-mongo中的DBRef功能可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM