小编Mat*_*IRE的帖子

在 Java 中使用 ObjectId 作为字符串(手册参考)与 spring-data mongodb

在 MongoDB 文档中,他们建议使用 ObjecId 进行手动引用。请参阅 https://docs.mongodb.com/manual/reference/database-references/#document-references

original_id = ObjectId()

db.places.insert({
    "_id": original_id,
    "name": "Broadway Center",
    "url": "bc.example.net"
})

db.people.insert({
    "name": "Erin",
    "places_id": original_id,
    "url":  "bc.example.net/Erin"
})
Run Code Online (Sandbox Code Playgroud)

我正在使用spring-data-mongodb,我正在寻找的是像这样定义的People类:

@Document
public class People {

    private String name;
    @Reference // or any Annotation to convert an ObjectId to a String
    private String placesId; 
    private String url;
}
Run Code Online (Sandbox Code Playgroud)

如何在 mongoDB 中将“places_id”作为 ObjectId 但映射到 POJO 中的字符串?

我期待有一个像@Reference这样的注释,但它似乎没有实现。

我不明白为什么我们在 spring-data-mongodb 中没有这种注释。我不想为所有使用手动引用的文档实现像spring 文档中建议的显式转换器。也许这不是正确的方法。

我错过了什么 ?

更新 :

我喜欢只使用 String 而不是 …

java spring mongodb spring-data

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

mongodb ×1

spring ×1

spring-data ×1