如何使用Json检索日期对象?

时间:2017-04-27 08:00:40

标签: java json

我正在使用JSON从数据库中检索数据。我的表中有一个日期列,类型为Date。我知道有些人会认为这是一个重复的问题,但并非所有其他问题都试图检索String并将其检索到目前为止这是相反的。 这是我使用

的代码
public ArrayList<Meeting> getListMeeting(String json) {
    ArrayList<Meeting> listMeetings = new ArrayList<>();

    try {

        JSONParser j = new JSONParser();

        Map<String, Object> meetings = j.parseJSON(new CharArrayReader(json.toCharArray()));

        System.out.println();
        List<Map<String, Object>> list = (List<Map<String, Object>>) meetings.get("meeting");


     for (Map<String, Object> obj : list) {
            Meeting m = new Meeting();
            m.setProjectName(obj.get("project_name").toString());
            m.setDescription(obj.get("description").toString());
            m.setTime(obj.get("time").toString());
            m.setDate(obj.get("date"));
          listMeetings.add(m);

        }

    } catch (IOException ex) {
     }
    return listMeetings;

}

1 个答案:

答案 0 :(得分:1)

日期在json中表示为字符串。使用SimpleDateFormat来解析/格式化字符串。

JSONObject jsonObj = new JSONObject(jsonStr);
SimpleDateFormat sourceFormat = new SimpleDateFormat("yyyy-MM-dd");

Date date = null;
try {
  date = sourceFormat.parse(jsonObj.getString("date"));
} 
catch (ParseException e) {
  e.printStackTrace();
}