解决SpringBoot返回Java8 时间JSON数据的格式化问题,使用extends WebMvcConfigurationSupport的方式解决
时间: 2023-12-10 10:40:11 浏览: 77
在SpringBoot中,返回Java8 时间类型时,JSON数据格式化的问题可以使用WebMvcConfigurer接口中的addFormatters方法来进行解决。
下面是使用extends WebMvcConfigurationSupport的方式解决的代码示例:
```java
@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {
@Override
protected void addFormatters(FormatterRegistry registry) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
registry.addFormatter(new Formatter<LocalDateTime>() {
@Override
public LocalDateTime parse(String text, Locale locale) throws ParseException {
return LocalDateTime.parse(text, dateTimeFormatter);
}
@Override
public String print(LocalDateTime object, Locale locale) {
return dateTimeFormatter.format(object);
}
});
}
}
```
在这个示例中,我们通过重写addFormatters方法,并向其中注册一个Formatter来实现Java8时间类型的格式化。在Formatter中,我们使用DateTimeFormatter来指定时间的格式,并在parse和print方法中对时间进行转换。
需要注意的是,在使用extends WebMvcConfigurationSupport的方式时,需要手动配置一些其他的Spring MVC配置,比如MessageConverters等。如果你不想手动配置这些,可以考虑使用其他方式来解决这个问题,比如实现WebMvcConfigurer接口。
阅读全文