mongodb 的 _id 中是包含时间信息的,可通过如下函数将时间转换成可读的格式:
private void test (Document doc) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(sdf.format(doc.getObjectId("_id").getDate()));
}
或者:
private String idToTime(String id) {
String timeString = id.substring(0, 8);
Date date = new Date( Long.parseLong(timeString, 16) * 1000);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
return sdf.format(date);
}
private String test (Document doc) {
System.out.println(idToTime(doc.getObjectId("_id").toHexString()));
}