时间日期JSON解析器

后端报错:

2024-02-14 16:33:44.715 ERROR 968 --- [nio-8080-exec-8] c.pxl.exception.GlobalExceptionHandler : runtimeException: JSON parse error: Cannot deserialize value of type `java.util.Date` from String "Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)": not a valid representation (error: Failed to parse Date value 'Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)': Cannot parse date "Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)": not compatible with any of standard forms ("yyyy-MM-dd'T'HH:mm:ss.SSSX", "yyyy-MM-dd'T'HH:mm:ss.SSS", "EEE, dd MMM yyyy HH:mm:ss zzz", "yyyy-MM-dd")); nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `java.util.Date` from String "Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)": not a valid representation (error: Failed to parse Date value 'Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)': Cannot parse date "Thu Feb 22 2024 00:00:00 GMT+0800 (中国标准时间)": not compatible with any of standard forms ("yyyy-MM-dd'T'HH:mm:ss.SSSX", "yyyy-MM-dd'T'HH:mm:ss.SSS", "EEE, dd MMM yyyy HH:mm:ss zzz", "yyyy-MM-dd"))

前端返回过来的数据无法解析JSON格式,可以配置一个日期反序列化类进行配置。

具体类型需要看你要什么再来详细配置

java 复制代码
package com.pxl.config;

import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;

import java.io.IOException;
import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;

// 自定义日期反序列化类
public class CustomDateDeserializer extends JsonDeserializer<Date> {
    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");

    @Override
    public Date deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException, IOException {
        String dateStr = jsonParser.getText();
        try {
            return (Date) dateFormat.parse(dateStr);
        } catch (ParseException e) {
            throw new RuntimeException("Failed to parse date: " + dateStr, e);
        }
    }
}
相关推荐
迷藏4942 分钟前
**发散创新:Go语言中基于上下文的优雅错误处理机制设计与实战**在现代后端开发中,**错误处理**早已不是简单
java·开发语言·后端·python·golang
2301_764441332 分钟前
基于python实现的便利店投资分析财务建模评估
开发语言·python·数学建模
杰克尼5 分钟前
知识点总结--day10(Spring-Cloud框架)
java·开发语言
okiseethenwhat12 分钟前
Java 内部类详解
java·开发语言
枫叶丹412 分钟前
【HarmonyOS 6.0】ArkUI 状态管理进阶:深入理解 @Consume 装饰器默认值特性
开发语言·华为·harmonyos
Chase_______14 分钟前
【Python 基础】第4章:函数模块与包完全指南(函数/模块/包)
开发语言·python
众创岛15 分钟前
测试失败时自动截图并附加到 Allure 报告
开发语言·python
Csvn17 分钟前
条件判断与循环结构详解
python
maxmaxma18 分钟前
ROS2机器人少年创客营:Python第二课
c++·python·机器人
智算菩萨19 分钟前
【Tkinter】10 Tkinter Listbox 列表框控件深度解析:多选模式、滚动条联动与双向选择器实战
python·ai编程