MyBatis 返回 Map 或 List<Map>时,时间类型数据,默认为LocalDateTime,响应给前端默认含有‘T‘字符

一、问题

MyBatis 返回 Map 或 List时,时间类型数据,默认为LocalDateTime
Springboot 响应给前端的LocalDateTime,默认含有'T'字符,如何统一配置去掉

二、解决方案

1、pom.xml 增加依赖(2024.11.6 补充)

java 复制代码
		<dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-jsr310</artifactId>
            <version>2.12.7</version>
        </dependency>

2、创建配置类,对ObjectMapper对象进行定制,指定日期类对应的序列化与反序列化处理对象,如

java 复制代码
@Configuration
public class LocalDateTimeFormatConfig {
    private static final String DEFAULT_DATE_TIME_PATTERN = "yyyy-MM-dd HH:mm:ss";
    private static final String DEFAULT_DATE_PATTERN = "yyyy-MM-dd";
    private static final String DEFAULT_TIME_PATTERN = "HH:mm:ss";

    @Bean
    @Primary
    public ObjectMapper objectMapper(){
        ObjectMapper objectMapper = new ObjectMapper();
        JavaTimeModule javaTimeModule = new JavaTimeModule();
        javaTimeModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_PATTERN)));
        javaTimeModule.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_PATTERN)));
        javaTimeModule.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_PATTERN)));
        javaTimeModule.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_PATTERN)));
        javaTimeModule.addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_PATTERN)));
        javaTimeModule.addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_PATTERN)));
        objectMapper.registerModule(javaTimeModule);
        return objectMapper;
    }
}

2、修改后运行测试

文章参考:https://www.cnblogs.com/spec-dog/p/11865059.html

相关推荐
一字白首4 分钟前
Vue 进阶,组件三大组成 + 通信 + 进阶语法
前端·javascript·vue.js
SadSunset5 分钟前
(16)MyBatis执行流程分析(偏上层架构)
java·架构·mybatis
小明记账簿12 分钟前
前端读取与导出XLSX文件实战指南(React+Ant Design)
前端·react.js·前端框架
打小就很皮...13 分钟前
前端 Word 导出:自定义页眉表格的实现方案
前端·word·react·页眉设置
JarvanMo24 分钟前
8 个你可能忽略了的 Flutter 小部件(四)
前端
学Linux的语莫26 分钟前
Vue前端知识
前端·javascript·vue.js
BUG创建者27 分钟前
thee.js完成线上展厅demo
开发语言·前端·javascript·css·html·css3·three.js
LYFlied31 分钟前
前端开发者需要掌握的编译原理相关知识及优化点
前端·javascript·webpack·性能优化·编译原理·babel·打包编译
BlackWolfSky31 分钟前
ES6 学习笔记3—7数值的扩展、8函数的扩展
前端·javascript·笔记·学习·es6