传参时带有日期参数,@JsonFormat与@DateTimeFormat

先鸡汤一波,平时不注意,欠的债总还是要还的,换工作了,自己写个项目,居然不知道他俩的区别。

    注解@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")是后台到前台的时间格式的转换
    注解@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")主要是前后到后台的时间格式的转换
缺@DateTimeFormat的报错信息:

	2021-10-27 10:23:25.783  WARN 10272 --- [io-9754-exec-12] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 2 errors
	Field error in object 'receiptTaskDO' on field 'receiptBeginDate': rejected value [2021-10-12T16:00:00.000Z]; codes [typeMismatch.receiptTaskDO.receiptBeginDate,typeMismatch.receiptBeginDate,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [receiptTaskDO.receiptBeginDate,receiptBeginDate]; arguments []; default message [receiptBeginDate]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'receiptBeginDate'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@com.fasterxml.jackson.annotation.JsonFormat @org.springframework.format.annotation.DateTimeFormat java.util.Date] for value '2021-10-12T16:00:00.000Z'; nested exception is java.lang.IllegalArgumentException: Invalid format: "2021-10-12T16:00:00.000Z" is malformed at "T16:00:00.000Z"]

日期格式化:

        formatDateTime(inputTime){
            if(!inputTime && typeof inputTime !== 'number'){
                return '';
            }
            var localTime = '';
            inputTime = new Date(inputTime).getTime();
            const offset = (new Date()).getTimezoneOffset();
            localTime = (new Date(inputTime - offset * 60000)).toISOString();
            localTime = localTime.substr(0, localTime.lastIndexOf('.'));
            localTime = localTime.replace('T', ' ');
            return localTime;
        },

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值