【问题标题】:What is use of @MongoId in Spring Data MongoDB over @Id?Spring Data MongoDB中@MongoId在@Id上的用途是什么?
【发布时间】:2019-12-24 09:28:29
【问题描述】:

我正在尝试将模型添加到 Mongo Db。

我知道我可以使用 @Id 来避免在 _id 字段中创建 ObjectId。现在,在使用它时,我从 org.springframework.data.mongodb.core.mapping 包中遇到了@MongoId。

所以我的问题是我们可以使用@MongoId 而不是@Id,如果可以,有什么用例?不幸的是,没有足够的文档可用于 @MongoId

如下所示:

import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.MongoId;

import java.util.Date;

@Document
public class LeadDetails {
    @MongoId
    private Integer id;
    private String firstName;
    private String middleName;
    private String lastName;
    private String mobile;
    private String landlineNumber;
    private Date contactedOn;
    private Date repliedOn;
    private String email;
}

【问题讨论】:

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


    【解决方案1】:

    某些环境需要自定义方法来映射 Id 值,例如存储在 MongoDB 中的数据,这些数据未通过 Spring Data 映射层运行。文档可以包含可以表示为 ObjectId 或字符串的 _id 值。从存储中读取文档回域类型工作得很好。由于隐式 ObjectId 转换,通过其 id 查询文档可能很麻烦。因此无法以这种方式检索文档。对于这些情况,@MongoId 提供了对实际 id 映射尝试的更多控制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-11
      • 1970-01-01
      • 2017-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多