解决Springboot3.x 日期格式化的问题
1.解决Springboot3.x 日期格式化的问题
Java8之后新出的日期时间类LocalDateTime比传统的Date类使用更加方便, 更重要的是LocalDateTime可以和Mysql中的时间类型DateTime类型匹配,无需添加格外的转换操作。
但是也存在一个小问题,LocalDateTime返回给前端的默认样式为 "2024-08-05T15:37:09",需要格式化的时候就不能按照格式化Date类型的方式了
配置也非常简单,新建一个配置类,生成一个Jackson2ObjectMapperBuilderCustomizer类型的Bean即可,并且设置需要的转换格式。
点击查看代码
@Configuration
public class DateFormatForJsonConfig{
@Value("${spring.jackson.date-format}")
private String datePattern;
@Value("${spring.jackson.time-zone}")
private String timeZone;
@Bean
public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer(){
return builder -> builder.serializerByType(LocalDateTime.class, new LocalDateTimeSerializer(
DateTimeFormatter.ofPattern(datePattern).withZone(ZoneId.of(timeZone))
));
}
}
然后即可成功格式化LocalDateTime类型:"2024-08-05 15:37:20"
合集:
Spring
标签:
LocalDateTime
, 日期格式化
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?