首页 > 解决方案 > 如何将杰克逊时区设置为系统默认值?

问题描述

我想jackson始终将对象映射器时区设置为系统默认值。我可以通过覆盖Jackson2ObjectMapperBuilder. 但我宁愿利用现有的application.properties被称为spring.jackson.time-zone.

@Bean
public Jackson2ObjectMapperBuilderCustomizer init() {
    return new Jackson2ObjectMapperBuilderCustomizer() {
        @Override
        public void customize(Jackson2ObjectMapperBuilder builder) {
            builder.timeZone(TimeZone.getDefault());
        }
    };
}

但是还有一个spring.jackson.time-zoneapplication.properties。也可以直接使用吗?以下不起作用。但我什至不知道我spel是否在应用程序属性中正确使用了表达式:

spring.jackson.time-zone=#{T(java.util.TimeZone).getDefault()}

标签: javaspringjacksontimezone

解决方案


推荐阅读