Java将日期类型Date时间戳转换为MongoDB的时间类型数据

时间:2022-09-11 20:09:13

存了一个时间类型(date)的数据到mongo数据库中,但是前台显示的是一串数字。继而引发了如下问题:

java里面如何把 时间戳 1477387464495 转换为 2016-10-25 17:24:24 期望格式的日期字符串。

因为业务需要,在model里面有个date类型的字段,然后需要按这个时间类型排序。但是在后台处理完之后,返回到前台,发现时间变成了13位数字,学名叫时间戳。不是我想要的具体时间,不适合展示啊。具体有如下

mongo数据库中存储时间类型的数据具体如下:

Java将日期类型Date时间戳转换为MongoDB的时间类型数据

然后debug的时候,时间类型如下:

Java将日期类型Date时间戳转换为MongoDB的时间类型数据

前台js里面看到的时间类型的数据如下:

 Java将日期类型Date时间戳转换为MongoDB的时间类型数据

具体java model 里面的属性字段的类型如下:

Java将日期类型Date时间戳转换为MongoDB的时间类型数据

然后有如下测试:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package com.lxk.test;
import java.text.simpledateformat;
import java.util.date;
/**
 * created by lxk on 2016/10/25
 */
class test {
  public static void main(string[] args) {
    date ss = new date();
    //date aw = calendar.getinstance().gettime();//获得时间的另一种方式,测试效果一样
    testtime(ss);
  }
  /**
   * 将date类型的时间转成 2016-10-25 18:11:55 此格式
   *
   * @param ss date类型的时间
   */
  public static void testtime(date ss) {
    system.out.println(ss);//打印一般的date类型的时间
    system.out.println(ss.gettime());//这个是把当前时间转换成秒数,即时间戳。
    simpledateformat format = new simpledateformat("yyyy-mm-dd hh:mm:ss");
    string time = format.format(ss.gettime());//这个就是把时间戳经过处理得到期望格式的时间
    system.out.println(time);
  }
}

具体测试执行效果:

Java将日期类型Date时间戳转换为MongoDB的时间类型数据

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/qq_27093465/article/details/52925667