springboot jdk8 LocalDateTime LocalDate 自定义convert 含tk.mybatis 3.5

Jackson

springboot 转换 @ResponseBody 自定义用的是 jackson,用Date类型是没有任何问题。

但JDK8的java.time.LocalDateTime 之类的时间类型 就不能正常 convert。

找了些分享文档,大多数提到引用:

compile group:'com.fasterxml.jackson.datatype',name:'jackson-datatype-jsr310',version:'2.9.3'

然后配置 spring.jackson.serialization.write_dates_as_timestamps: false;

可是尴尬的是虽然起了作用但是并没有达到我们的预期,自定义<yyyy-MM-dd HH:mm> 之类的。

这里贴出我的配置:

@Configuration
public class CommonConfiguration {

    @Bean
    public Module jsonMapperJava8DateTimeModule() {
        SimpleModule module = new SimpleModule();
        module.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm")));
        module.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
        module.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern("HH:mm")));

        return module;
    }
}

生效结果:


image.png

tk.mybatis.mapper 3.5.0

项目中用到的是mybatis,之前用Date的时候也是正常。用了LocalDateTime之后,一些调用辅助mapper的更新时间无效了。
解决办法:


image.png

特此总结。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容