解決辦法一:將實體類中的LocalDateTime轉(zhuǎn)為Date類型
解決辦法二:
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.13.0</version>
</dependency>
通過注解指定
@TableField("update_time")
@ApiModelProperty("更新時間")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") //此注解用來接收字符串類型的參數(shù)封裝成LocalDateTime類型
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8", shape = JsonFormat.Shape.STRING) //此注解將date類型數(shù)據(jù)轉(zhuǎn)成字符串響應(yīng)出去
@JsonDeserialize(using = LocalDateTimeDeserializer.class) // 反序列化
@JsonSerialize(using = LocalDateTimeSerializer.class) // 序列化
private LocalDateTime updateTime;
@TableField("create_time")
@ApiModelProperty("添加時間")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") //此注解用來接收字符串類型的參數(shù)封裝成LocalDateTime類型
@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8", shape = JsonFormat.Shape.STRING) //此注解將date類型數(shù)據(jù)轉(zhuǎn)成字符串響應(yīng)出去
@JsonDeserialize(using = LocalDateTimeDeserializer.class) // 反序列化
@JsonSerialize(using = LocalDateTimeSerializer.class) // 序列化
private LocalDateTime createTime;
配置全局
@Configuration
public class MvcConfig implements WebMvcConfigurer {
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
MappingJackson2HttpMessageConverter messageConverter = new MappingJackson2HttpMessageConverter();
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
objectMapper.registerModule(new JavaTimeModule());
messageConverter.setObjectMapper(objectMapper);
converters.add(0, messageConverter);
}
}
解決辦法三:文章來源:http://www.zghlxwxcb.cn/news/detail-662018.html
用阿里的FastJson替換ObjectMapper文章來源地址http://www.zghlxwxcb.cn/news/detail-662018.html
到了這里,關(guān)于Java 8 date/time type `java.time.LocalDateTime` not supported by default:日期序列化問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!