我正在从java代码中读取mongo集合。当我尝试读取_id
值时,我得到以下内容:
{"$oid":"541333629520f6e05b0cb410"}
我从java代码中读到:jsonObject.get("_id")
。我期待的是:"_id" : "541333629520f6e05b0cb410"
这里我正在寻找一种方法,以便我可以在一次操作中将_id作为字符串。
到目前为止,我一直在尝试以下方法:
JSONObject idObj = (JSONObject)JSONObj.get("_id");
ObjectId objectId = (ObjectId) idObj.get("$oid");
答案 0 :(得分:1)
使用以下代码段解决此问题:
JSONObject idObj = (JSONObject)obj.get("_id");
String strID = (String) idObj.get("$oid");
可能还有其他一些方法可以更好地完成这项工作。
答案 1 :(得分:1)
这对我有用:
String objectId = (String) result.get("_id.$oid");
也许有更好的方法来做到这一点。让我知道它是否适合你。
干杯!
答案 2 :(得分:1)
使用MongoDb驱动程序版本3并使用Document对象。
Document temp = hwCursor.next();
temp.getObjectId("_id").toString();
或
temp.getObjectId("_id").toHexString();
答案 3 :(得分:0)
导入org.bson.types.ObjectId;
ObjectId idObj =(ObjectId)obj.get(“ _ id”);
字符串id = idObj.toString()