zoukankan      html  css  js  c++  java
  • springboot 使用DateTimeFormat(pattern="yyyyMMdd HH:mm:ss") 注解把字符串自动转换Date类型报错,注意事项。

    1.DTO

    import lombok.Data;
    import org.springframework.format.annotation.DateTimeFormat;
    
    import java.io.Serializable;
    import java.util.Date;
    
    /**
     * @author: htdd
     * @date: 2022/1/7 11:15
     */
    @Data
    public class TestDTO implements Serializable {
    
        @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
        private Date createTime;
    }

    2.controller

    @PostMapping("test")
    public JsonData test(HttpServletRequest request, @RequestBody TestDTO dto) {
        return JsonData.buildSuccess("success");
    }

    3.postman请求时后报错

    postman请求

    后台报错

    报错原因:

    大体意思就是时间格式不符合要求,查了下文档对于时间,默认的转换格式为

    "yyyy-MM-dd'T'HH:mm:ss.SSSZ"  
    "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"  
    "EEE, dd MMM yyyy HH:mm:ss zzz"  
    "yyyy-MM-dd" 

    解决:

    在配置文件中统一配置

    spring.jackson.time-zone=GMT+8
    spring.jackson.date-format=yyyy-MM-dd HH:mm:ss

    4.postman 再次请求,转换成功

  • 相关阅读:
    2019/10/9 CSP-S 模拟测
    简单的面向对象
    魔术变量
    函数
    全局变量
    超级全局变量
    for循环
    while循环
    php数组排序
    python打造XslGenerator
  • 原文地址:https://www.cnblogs.com/sunxun001/p/15774687.html
Copyright © 2011-2022 走看看