Java LocalDateTime轉(zhuǎn)Json報(bào)錯(cuò)處理方案
在項(xiàng)目中LocalDateTime 進(jìn)行json轉(zhuǎn)換時(shí),拋出序列化異常,查找解決方案,記錄下來,方便備查。
報(bào)錯(cuò)信息
Caused by: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Java 8 date/time type java.time.LocalDateTime not supported by default:
add Module “com.fasterxml.jackson.datatype:jackson-datatype-jsr310” to enable handling
處理方案一、對(duì)日期字段序列化
第一步、在pom中添加依賴
按照錯(cuò)誤提示信息,加入jackson依賴。
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.12.3</version>
</dependency>
第二步、在字段上添加注解
在指定的日期字段定義時(shí),添加序列化和反序列化的注解。
@JsonSerialize(using = LocalDateTimeSerializer.class) @JsonDeserialize(using = LocalDateTimeDeserializer.class) private LocalDateTime createdTime;
處理方案二、使用JSON工具直接轉(zhuǎn)換
/**
* 功能:測試LocateTime轉(zhuǎn)Json
*/
import com.alibaba.fastjson.JSONObject;
@Test
public void testLocateTimeToJson() {
LocalDateTime time = LocalDateTime.now();
logger.info("當(dāng)前日期為:%s", time);
String str = JSONObject.toJSONString(time);
logger.info("日期轉(zhuǎn)JSON-LocateTimeToJson返回結(jié)果為:%s", str);
}
執(zhí)行結(jié)果如下:

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Java中Date、LocalDate、LocalDateTime、LocalTime、時(shí)間戳之間的相互轉(zhuǎn)換代碼
- java LocalDateTime加時(shí)間,計(jì)算兩個(gè)時(shí)間的差方式
- Java中各類日期和時(shí)間轉(zhuǎn)換超詳析總結(jié)(Date和LocalDateTime相互轉(zhuǎn)換等)
- java傳入時(shí)間戳返回LocalDateTime的實(shí)現(xiàn)方法
- Java前后端任意參數(shù)類型轉(zhuǎn)換方式(Date、LocalDateTime、BigDecimal)
- Java8日期時(shí)間類LocalDateTime比較大小舉例
相關(guān)文章
Spring Boot實(shí)現(xiàn)分布式鎖的自動(dòng)釋放的示例代碼
在實(shí)際開發(fā)中,我們可以使用 Redis、Zookeeper 等分布式系統(tǒng)來實(shí)現(xiàn)分布式鎖,本文將介紹如何使用 Spring Boot 來實(shí)現(xiàn)分布式鎖的自動(dòng)釋放,感興趣的朋友跟隨小編一起看看吧2023-06-06
Springboot項(xiàng)目啟動(dòng)優(yōu)化方式
文章詳細(xì)介紹了Spring Boot項(xiàng)目的啟動(dòng)優(yōu)化策略,包括懶加載、異步初始化、精簡依賴、JVM優(yōu)化和使用Actuator監(jiān)控等方法,旨在提高項(xiàng)目的啟動(dòng)速度和運(yùn)行性能2025-03-03
深入了解Java數(shù)據(jù)結(jié)構(gòu)和算法之堆
這篇文章主要為大家介紹了Java數(shù)據(jù)結(jié)構(gòu)和算法之堆 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-01-01
Java?SpringBoot?@Async實(shí)現(xiàn)異步任務(wù)的流程分析
這篇文章主要介紹了Java?SpringBoot?@Async實(shí)現(xiàn)異步任務(wù),主要包括@Async?異步任務(wù)-無返回值,@Async?異步任務(wù)-有返回值,@Async?+?自定義線程池的操作代碼,需要的朋友可以參考下2022-12-12
Java給JFrame窗口設(shè)置熱鍵的方法實(shí)現(xiàn)
這篇文章主要介紹了Java給JFrame窗口設(shè)置熱鍵的方法實(shí)現(xiàn),文中通過示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
Java 對(duì)稱加密幾種算法分別實(shí)現(xiàn)
這篇文章主要介紹了Java 對(duì)稱加密使用DES / 3DES / AES 這三種算法分別實(shí)現(xiàn)的相關(guān)資料,這里提供了實(shí)例代碼,需要的朋友可以參考下2017-01-01
解決java攔截器獲取POST入?yún)?dǎo)致@RequestBody參數(shù)丟失問題
文章講述了在Java開發(fā)中使用攔截器獲取POST請(qǐng)求入?yún)r(shí),由于流關(guān)閉導(dǎo)致`@RequestBody`參數(shù)丟失的問題,并提出了一種解決方案,解決方案包括自定義方法、防止流丟失、過濾器和攔截器的合理組織和使用,最終確保了參數(shù)的正確傳遞2024-11-11
在Spring項(xiàng)目開發(fā)中Domain層的使用解析
Domain是領(lǐng)域?qū)拥暮诵臄?shù)據(jù)載體,主要在領(lǐng)域?qū)觾?nèi)部及與Service層之間傳遞,用于封裝核心業(yè)務(wù)概念和規(guī)則,這篇文章給大家介紹在Spring項(xiàng)目開發(fā)中,Domain層的作用詳解,感興趣的朋友跟隨小編一起看看吧2026-02-02
Springboot初始化項(xiàng)目并完成登入注冊(cè)的全過程
工作之余,想要學(xué)習(xí)一下SpringBoot,通過網(wǎng)絡(luò)大量教程最終成功運(yùn)行SpringBoot項(xiàng)目,下面這篇文章主要給大家介紹了關(guān)于Springboot初始化項(xiàng)目并完成登入注冊(cè)的相關(guān)資料,需要的朋友可以參考下2022-10-10

