使用FormatterRegistrar注册Formatter

注册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>