【问题标题】:Is Spring Data Mongodb, how can I reference one document from another without going via IDs是 Spring Data Mongodb,如何在不通过 ID 的情况下从另一个文档中引用一个文档
【发布时间】:2013-10-20 10:44:09
【问题描述】:

我正在使用带有 Spring Data 的 MongoDB。我想让一个文档引用另一个文档(实际上是一个用户),但我最终不得不做额外的工作。例如

class Watch {
    String id;
    User user;
}

这很好,但我似乎最终将整个用户嵌入到文档中,所以我这样做了:

class Watch {
    String id;
    String userId;
}

但后来我想在一些 JSTL 中使用它,我想这样做:

${watch.user.email}

但我必须添加一些映射代码。

【问题讨论】:

    标签: java spring mongodb spring-data spring-data-mongodb


    【解决方案1】:

    对用户使用@DBRef 注解。

    您需要单独保存用户(无级联),但您可能想要这样做。

    注意用户会被急切地加载。

    【讨论】:

    • 我知道这为时已晚,但实际上你也可以懒加载它,只需使用@DbRef(lazy = true)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-13
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    相关资源
    最近更新 更多