2
我已经写了一个操作使用Morphia向Mongo上传文档。Morphia插入字段作为int64而不是in32
我有一个字段,我想保存为一个int32,但在upsert之后它被插入为int64。
我已经确定我使用Long.intValue()和Morphia序列化的对象将long转换为int,成员字段为int。我也检查过UpdateOperations.ops,看看哪些morphia插入。
的UPSERT操作:
UpdateOperations<Test> ops = datastore.createUpdateOperations(Test.class)
.set("test_field", testField.intValue())
蒙戈的当前版本我使用的是3.0。
任何帮助,将不胜感激!
谢谢!
编辑: 综观吗啡更新查询操作是:
{$set={test_field=11}}
你可以添加一个完整的例子吗?你如何验证它是数据库中的Int64?你可以在shell中执行'db.collection_name.find({“test_field”:{$ type:18}})'; – Veeram
'db.collection_name.find({“test_field”:{$ type:18}})''返回我在我的集合中唯一的文档。我也使用Robomongo来确认文档中每个字段的类型。 我已经删除了集合,以确保没有索引值持有 – diepjy
此外,我已经检查到JSON的文件,该字段有“test_field”:NumberLong(1) – diepjy