使用mongotemplate滚动更新mongodb中的现有记录

时间:2013-04-03 07:36:54

标签: java spring mongodb

对于我,我想使用spring mongotemplate更新mongodb中的现有记录。为此我必须从mongodb中搜索现有记录。在mongodb中保存记录,它会自动在每个记录中创建一个名为"_id"的字段记录。我尝试了很多来访问这个领域。但是我无法做到.. :(

因此我在DTO对象中手动创建了一个名为myid的字段。每次保存我都在序列化文件中的id并保存。使用此myid进行搜索。我知道硬编码文件路径会在服务器中部署时产生问题。

有没有办法做这个或以任何方式访问系统生成的_id进行搜索和更新.. ??

感谢。

1 个答案:

答案 0 :(得分:1)

_id是主键。如果您没有在对象中使用注释@id指定字段,则Mongo将为您创建一个字段。您无法访问它,因为Mongo无法填充该字段,因为它不存在或缺少映射。

你必须在你的代码中有类似的东西[如果你也可以发布你的代码会很好。]

import org.springframework.data.annotation.Id;

@Id
protected String id;

HTH