spring boot从1.5版本升级到2.7版本遇到的问题

1、jackson
jackson包路径发生替换
从 org.codehaus.jackson->com.fasterxml.jackson

对于LocalDateTime的序列化:
添加依赖:

	<dependency>
		<groupId>com.fasterxml.jackson.datatype</groupId>
		<artifactId>jackson-datatype-jsr310</artifactId>
	</dependency>

        JavaTimeModule javaTimeModule = new JavaTimeModule();
        SimpleModule simpleModule = new SimpleModule();
		//LocalDateTIme转时间戳
        simpleModule.addSerializer(LocalDateTime.class, new JsonSerializer<LocalDateTime>() {
            @Override
            public void serialize(LocalDateTime value, JsonGenerator gen, SerializerProvider provider) throws IOException {
                long epochMilli = value.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
                gen.writeNumber(epochMilli);
            }
        });


        for (HttpMessageConverter<?> converter : converters) {
            if (converter instanceof MappingJackson2HttpMessageConverter) {
                ObjectMapper mapper = ((MappingJackson2HttpMessageConverter) converter).getObjectMapper();
                mapper.registerModule(javaTimeModule);
                mapper.registerModule(simpleModule);
            }
        }

2、mybatis的dateTime映射问题
当resultType="map"时,dataTime类型的字段会映射为LocalDateTime,需要配置以下TypeHandler:

configuration.getTypeHandlerRegistry().register(Object.class, JdbcType.TIMESTAMP, new DateTypeHandler());
posted @ 2026-05-06 17:50  Hekk丶  阅读(9)  评论(0)    收藏  举报