我正在使用Mongo DB并在saveData方法上尝试保存数据对象
在Mongo DB上。首先,我要以JSON格式转换数据对象,然后保存
Mongo DB上的对象。但是有一个问题。我的班级对象具有一个属性initialDate与
日期类型,但是当此代码将对象保存在Mongo上时,initialDate属性将另存为字符串,
但我需要将其保存为日期格式。有人可以帮我吗?
public void saveData(ClassObject data) {
JSONObject jsonObject = new JSONObject(data);
String dataJson = jsonObject.toString();
DBObject dbObject = (DBObject) JSON.parse(dataJson);
DBCollection table = mongoDB.getCollection(data
.getModel().getProjectName());
table.insert(dbObject);
}
这里的ClassObject
Class ClassObject {
private int value;
private ParentModel model;
private Date initialDate;
...
//here get and setters
}
最佳答案
在date
上执行toString
时,您的jsonObject
被转换为字符串。执行date
之后,您需要将其转换回JSON.parse
类型-
DBObject dbObject = (DBObject) JSON.parse(dataJson);
// TODO: Convert dbObject's initialDate property back to date type here
DBCollection table = mongoDB.getCollection(data
.getModel().getProjectName());