假设我有一个User类,其中包含对客户文档的手动引用:
public class User(){
@Id
public String id;
public String name;
public String customerId;
}
我希望id和customerId都存储为mongo中的ObjectId .
保存用户文档时,“id”将转换为ObjectId,但customerId将保存为字符串 . 我可以拥有ObjectId类型的customerId,但我宁愿将POJO作为字符串,并且在保存/查询时让customerId自动转换为ObjectId . 似乎没有任何内置注释的行为类似于@Id,但可以用于手动引用 . 我将如何创建一个,还是有更好的解决方案?我已经阅读了一些转换器,但我不想将整个POJO重新映射到DBObject .
任何意见,将不胜感激 .
1 回答
当您获得客户数据时,您必须自己创建objectId .
Db.Customer.find({"_id" : new ObjectId("$valueFromUserTable")});
所以在Spring Java中你会: