注册Formatter的另一种方法是使用FormatterRegistrar
1.建立registrar
public class MyFormatterRegistrar implements FormatterRegistrar { private DateFormatter dateFormatter; public void setDateFormatter( DateFormatter dateFormatter ) { this.dateFormatter = dateFormatter; } @Override public void registerFormatters( FormatterRegistry registry ) { registry.addFormatter(dateFormatter); } }
实现FormatterRegistrar只需实现一个方法,就是registerFormatters,在该方法中添加需要注册的Formatters
2.修改配置文件
<!-- 开启matrix-variables注释--> <!-- 注册格式化数据 此配置项需要位于RequestMappingHandlerAdapter之上 --> <mvc:annotation-driven enable-matrix-variables="true" conversion-service="conversionService" /> <!-- DataFormatter bean --> <bean id="dateFormatter" class="org.fkit.formatter.DateFormatter" c:_0="yyyy-MM-dd" /> <!-- 格式化 --> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean"> <property name="formatterRegistrars"> <set> <bean class="org.fkit.formatter.MyFormatterRegistrar" p:dateFormatter-ref="dateFormatter" /> </set> </property> </bean>