存了一个时间类型(Date)的数据到mongo数据库中,但是前台显示的是一串数字。继而引发了如下问题:
Java里面如何把 时间戳 1477387464495 转换为 2016-10-25 17:24:24 期望格式的日期字符串。
因为业务需要,在model里面有个Date类型的字段,然后需要按这个时间类型排序。但是在后台处理完之后,返回到前台,发现时间变成了13位数字,学名叫时间戳。不是我想要的具体时间,不适合展示啊。具体有如下
mongo数据库中存储时间类型的数据具体如下:
然后debug的时候,时间类型如下:
前台js里面看到的时间类型的数据如下:
具体Java model 里面的属性字段的类型如下:
然后有如下测试:
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);
}
}
具体测试执行效果:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接