解决@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小时制度,其他情况一般小写规范。
我这里犯的错也是将分钟数转化为了月份,转化后的时间就变成了两年后了。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot开发项目,引入JPA找不到findOne方法的解决
这篇文章主要介绍了SpringBoot开发项目,引入JPA找不到findOne方法的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-11-11
SpringBoot文件上传控制及Java 获取和判断文件头信息
这篇文章主要介绍了SpringBoot文件上传控制的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下2017-12-12
springboot+shiro+jwtsession和token进行身份验证和授权
最近和别的软件集成项目,需要提供给别人接口来进行数据传输,发现给他token后并不能访问我的接口,拿postman试了下还真是不行,检查代码发现项目的shiro配置是通过session会话来校验信息的,修改代码兼容token和session2024-06-06
Java8新特性之泛型的目标类型推断_动力节点Java学院整理
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。下面通过本文给分享Java8新特性之泛型的目标类型推断,感兴趣的朋友参考下吧2017-06-06
浅谈Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系
本文主要介绍了SpringBoot、MyBatis和MyBatis-Plus的依赖版本对应关系,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2024-11-11


最新评论