解决@DateTimeFormat格式化时间出错问题
@DateTimeFormat格式化时间出错
这是前端传值
后端接收到的时间为
bean使用的jsonFormat与DateTimeFormat注解做转换,其中jsonFormat主要用作数据库时间类型与java的date之前做转换,而DateTimeFormat用作前端传来的json数据中时间String与javaBean的Date做转换
网上查了很多时间转换数据错误的问题,大都是因为时区问题导致时间多加了8个小时,这只需要加上timezone = "GMT+8"做时区转换即可。
我这个问题实在是因为自己傻,连这么基础的东西都忘了
bug修复后的
以前一直没有注释时间格式化的细节,HH与hh,MM与mm的区别,经常为了省事四处copy。
做下总结
- yyyy 年份 通常小写 当然大写也没关系 代表年度格式化
- MM(大写) 大写的MM代表月份
- dd 通常小写 大写也不会出错
- HH (hh) HH代表24小时制的时间 hh代表转换为12小时的时间
- mm(小写) 代表分钟
- ss 通常小写 代表秒的转换
对于以上可以看出 大小写主要是为了区别月份与分钟以及时间24小时制度,其他情况一般小写规范。
我这里犯的错也是将分钟数转化为了月份,转化后的时间就变成了两年后了。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Java线程池队列LinkedTransferQueue示例详解
这篇文章主要为大家介绍了Java线程池队列LinkedTransferQueue示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-12-12JAVA实现 springMVC方式的微信接入、实现消息自动回复实例
本篇文章主要介绍了JAVA实现 springMVC方式的微信接入、实现消息自动回复,这里整理了详细的代码,有需要的小伙伴可以参考下。2016-12-12springboot中rabbitmq实现消息可靠性机制详解
这篇文章主要介绍了springboot中rabbitmq实现消息可靠性机制详解,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下2021-09-09MyBatis中resultMap和resultType的区别详解
这篇文章主要介绍了MyBatis中resultMap和resultType的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-07-07详解java并发编程(2) --Synchronized与Volatile区别
这篇文章主要介绍了Synchronized与Volatile区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-04-04
最新评论