首页 > Web开发 > 详细

@DateTimeFormat 和 @JsonFormat 注解完成日期参数接收和格式化输出

时间:2021-09-02 00:16:17      阅读:26      评论:0      收藏:0      [点我收藏+]

入参格式化

使用 Spring 的 @DateTimeFormat 注解格式化参数,来解决上述问题

public class DateVo {
    // 接收日期参数
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }

    public Date getDate(){
        return date;
    }

}

 

输出格式化

使用 jackson 的 @JsonFormat 注解

public class DateVo {
     // 输出格式
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }

    public Date getDate(){
        return date;
    }
}

时间格式正确,但实际上当前时间是 “2018-08-01 22:32:57” ,早了8个小时。因为,jackson在序列化时间时是按照国际标准时间GMT进行格式化的,而在国内默认时区使用的是CST时区,两者相差8小时。

@JsonFormat(
    pattern = "yyyy-MM-dd HH:mm:ss",
    timezone = "GMT+8"
)
private Date date;

 

@DateTimeFormat 和 @JsonFormat 注解完成日期参数接收和格式化输出

原文:https://www.cnblogs.com/M87-A/p/15213756.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!