查询出的时间类型的数据是一串数字, 怎么转化为时间格式格式

数据库查询出来的sysCreateDate的数据是一串数字1478065615000, 怎么转换为"2016-11-11 05:36:56"的形式呢?

怎么才能转换为可以认识的数据类型啊? 

解决方法: 使用@JsonFormat注解

 

@JsonFormat注解是一个时间格式化注解,比如我们存储在mysql中的数据是date类型的,当我们读取出来封装在实体类中的时候,就会变成英文时间格式,而不是yyyy-MM-dd HH:mm:ss这样的中文时间,因此我们需要用到JsonFormat注解来格式化我们的时间。
JsonFormat注解是jackson包里面的一个注解,因此在使用的时候需要引入fasterxml maven的jar包,如下所示。
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.2</version>
</dependency>

引入fasterxml maven jar包之后,就可以在实体类属性上面使用@JsonFormat注解了,要注意的是,它只会在类似@ResponseBody返回json数据的时候,才会返回格式化的yyyy-MM-dd HH:mm:ss时间,你直接使用System.out.println()输出的话,仍然是类似“Fri Dec 01 21:05:20 CST 2017”这样的时间样式。
package demo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

public class Student {
    private int id;
    private String username;
    //在字段上加上下面的这点注解!    
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createDate;
    
    //getter setter省略。。。
            
}
当我们这样@ResponseBody输出json数据的时候,@JsonFormat注解标识的date属性就会自动返回yyyy-MM-dd HH:mm:ss样式的时间了,例如。

问题解决! 

======================================== 

另外一种解决思路: 将注解添加在getter方法上面

1.可将Date数据类型转换为String。

2.在pom引入依赖,(Maven)

<!-- jackson-databind依赖 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.2</version>
</dependency>


3. 在Date所在的实体类中找到Date的get方法,在方法上加入@JsonFormat加入注释,这样在获取的时候就能获取到指定时间格式,详细用法请搜索@JsonFormat

@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
public Date getCreateTime() {
return createTime;
}



原文:https://blog.csdn.net/weixin_41891331/article/details/81097326

原文链接: https://blog.csdn.net/loveyour_1314/article/details/81982874

猜你喜欢

转载自www.cnblogs.com/zjulanjian/p/11103602.html