2013-04-03 44 views
0

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

因此,我手动在我的DTO对象中创建了一个名为myid的字段。每一次节省我序列化id在使用这种myid。我知道硬编码文件的路径和saving.Searching而在服务器部署会造成问题。

有没有办法做到这一点或任何方式访问系统生成_id用于搜索和更新..? ?

谢谢。

回答

1

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

你必须有一些像在你的代码[这将是很好,如果你可以过张贴您的代码。]

import org.springframework.data.annotation.Id; 

@Id 
protected String id; 

HTH

+0

据工作一样好,我增加@Document在class level –

+0

是否强制我们@Id字段在mongodb中更新工作? – Nagesh