解決@DateTimeFormat格式化時(shí)間出錯(cuò)問題
@DateTimeFormat格式化時(shí)間出錯(cuò)
這是前端傳值
后端接收到的時(shí)間為
bean使用的jsonFormat與DateTimeFormat注解做轉(zhuǎn)換,其中jsonFormat主要用作數(shù)據(jù)庫時(shí)間類型與java的date之前做轉(zhuǎn)換,而DateTimeFormat用作前端傳來的json數(shù)據(jù)中時(shí)間String與javaBean的Date做轉(zhuǎn)換
網(wǎng)上查了很多時(shí)間轉(zhuǎn)換數(shù)據(jù)錯(cuò)誤的問題,大都是因?yàn)闀r(shí)區(qū)問題導(dǎo)致時(shí)間多加了8個(gè)小時(shí),這只需要加上timezone = "GMT+8"做時(shí)區(qū)轉(zhuǎn)換即可。
我這個(gè)問題實(shí)在是因?yàn)樽约荷?,連這么基礎(chǔ)的東西都忘了
bug修復(fù)后的
以前一直沒有注釋時(shí)間格式化的細(xì)節(jié),HH與hh,MM與mm的區(qū)別,經(jīng)常為了省事四處copy。
做下總結(jié)
- yyyy 年份 通常小寫 當(dāng)然大寫也沒關(guān)系 代表年度格式化
- MM(大寫) 大寫的MM代表月份
- dd 通常小寫 大寫也不會出錯(cuò)
- HH (hh) HH代表24小時(shí)制的時(shí)間 hh代表轉(zhuǎn)換為12小時(shí)的時(shí)間
- mm(小寫) 代表分鐘
- ss 通常小寫 代表秒的轉(zhuǎn)換
對于以上可以看出 大小寫主要是為了區(qū)別月份與分鐘以及時(shí)間24小時(shí)制度,其他情況一般小寫規(guī)范。
我這里犯的錯(cuò)也是將分鐘數(shù)轉(zhuǎn)化為了月份,轉(zhuǎn)化后的時(shí)間就變成了兩年后了。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot開發(fā)項(xiàng)目,引入JPA找不到findOne方法的解決
這篇文章主要介紹了SpringBoot開發(fā)項(xiàng)目,引入JPA找不到findOne方法的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11SpringBoot文件上傳控制及Java 獲取和判斷文件頭信息
這篇文章主要介紹了SpringBoot文件上傳控制的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-12-12springboot+shiro+jwtsession和token進(jìn)行身份驗(yàn)證和授權(quán)
最近和別的軟件集成項(xiàng)目,需要提供給別人接口來進(jìn)行數(shù)據(jù)傳輸,發(fā)現(xiàn)給他token后并不能訪問我的接口,拿postman試了下還真是不行,檢查代碼發(fā)現(xiàn)項(xiàng)目的shiro配置是通過session會話來校驗(yàn)信息的,修改代碼兼容token和session2024-06-06Java8新特性之泛型的目標(biāo)類型推斷_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
泛型是Java SE 1.5的新特性,泛型的本質(zhì)是參數(shù)化類型,也就是說所操作的數(shù)據(jù)類型被指定為一個(gè)參數(shù)。下面通過本文給分享Java8新特性之泛型的目標(biāo)類型推斷,感興趣的朋友參考下吧2017-06-06淺談Spring Boot、MyBatis、MyBatis-Plus 依賴版本對應(yīng)關(guān)系
本文主要介紹了SpringBoot、MyBatis和MyBatis-Plus的依賴版本對應(yīng)關(guān)系,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11