簡體   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