spring-boot で ConfigurationProperties に ZonedDateTime を書く場合のやり方
application.yml に日付データを入れて ZonedDateTime にマッピングしたい、みたいな場合。
http://blog.rakugakibox.net/entry/2015/12/04/springboot-with-java8time ↑こちらのブログに掲載されているように以下のようなクラスをおけばよい。
@Configuration
public class ConversionServiceConfiguration {
@Bean
public ConversionService conversionService() {
FormattingConversionServiceFactoryBean factory = new FormattingConversionServiceFactoryBean();
DateTimeFormatterRegistrar registrar = new DateTimeFormatterRegistrar();
registrar.setUseIsoFormat(true);
factory.setFormatterRegistrars(Collections.singleton(registrar));
factory.afterPropertiesSet();
return factory.getObject();
}
}
便利~
追記: http://www.logicbig.com/tutorials/spring-framework/spring-boot/custom-configuration-properties-binding/ のようなやり方もあるとのこと。 https://twitter.com/wreulicke/status/925613009728290817
Published: 2017-11-01(Wed) 04:19