morphia保存并忽略一些字段

时间:2016-02-03 13:15:35

标签: java mongodb morphia

我的对象(myObj)看起来像是

field1:""
,field2:""
,field3:""
........
,fieldn:""

,otherfield1:""
,otherfield2:""
,otherfield3:""

有没有办法做类似

的事情
db.save(myObj).ignoreFields("otherField1", "otherField2", "otherField3");

这样,在这个操作过程中,这3个字段将保持不变。 Morphia语法是可取的,但如果这样的事情不可能,那么mongo java驱动程序语法也没关系。

1 个答案:

答案 0 :(得分:0)

这听起来像是你的应用程序/业务逻辑要检查的工作。我的意思是你的代码停止检查权限,然后更改对象内的那些字段,让Mongo / Morphia保存整个文档。

您的另一个选择是使用MongoDB的更新API来设置您想要更改的字段:https://docs.mongodb.org/manual/reference/operator/update/set/

最后 - 也许您可以重构将这些安全字段存储在另一个集合中的单独文档中,但这又会让您回到管理业务逻辑中的权限。