我使用以下代码更新mongodb中的文档。
BasicDBObject searchQuery = new BasicDBObject();
searchQuery.append("_id",new ObjectId("133443acb"));
BasicDBObject updateData = new BasicDBObject();
updateData.append("name","0.4");
BasicDBObject setData = new BasicDBObject();
setData.append("$set",updateData);
collection.updateOne(searchQuery,updateData)
它抛出
org.springframework.web.util.NestedServletException:Request 处理失败;嵌套异常是 java.lang.IllegalArgumentException:无效的BSON字段名称
但我有一个有效的字段名称“name”。下面是获取该对象时打印的数据。
{
"_id": {
"timestamp": 1517210676,
"machineIdentifier": 2434039,
"processIdentifier": 12248,
"counter": 4509198,
"time": 1517210676000,
"date": 1517210676000,
"timeSecond": 1517210676
},
"instanceId": "/device/5a6ec9932523f71d08079cef/port/5a6ecc342523f72fd844ce0e",
"modelId": "/device/port",
"ip": "192.168.1.6",
**"name": "0.2",**
"type": "ethernet"
}
我需要帮助才能找到问题?我使用正确的API吗?我是否使用正确的方法更新现有文档中的字段?