我正在使用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());

10-07 16:09