其他分享
首页 > 其他分享> > 格式化LocalTime、LocalDate和LocalDateTime

格式化LocalTime、LocalDate和LocalDateTime

作者:互联网

使用jackson无法对LocalTime、LocalDate和LocalDateTime 进行格式化 会根据不对题的Serializer进行格式化 而lcalTIme LocalDate LocalDateTIme没有默认的Serializer 所以我们要新建config类来配置Serializer

@Configuration
public class DateformatConfig {

    /**
     * Date格式化字符串
     */
    private static final String DATE_FORMAT = "yyyy-MM-dd";
    /**
     * DateTime格式化字符串
     */
    private static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
    /**
     * Time格式化字符串
     */
    private static final String TIME_FORMAT = "HH:mm:ss";
    @Bean
    @Primary
    public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
        return builder -> builder.serializerByType(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)))
                .serializerByType(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DATE_FORMAT)))
                .serializerByType(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(TIME_FORMAT)))
                .deserializerByType(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)))
                .deserializerByType(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DATE_FORMAT)))
                .deserializerByType(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(TIME_FORMAT)));
    }

}

标签:格式化,ofPattern,FORMAT,DateTimeFormatter,LocalDateTime,new,LocalDate,class,LocalTi
来源: https://www.cnblogs.com/lyraHeartstrings/p/15838827.html