存了一个时间类型(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); 
    } 
} 

具体测试执行效果:


发布评论
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

java 中 mongodb的各种操作 模糊查询 精确查询 等等知识解答
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。