如何配置客户转换器/格式化程序以及在Spring 4中使用哪个

时间:2014-09-15 02:52:52

标签: spring spring-mvc

我正在尝试将嵌套对象绑定到表单选择列表。这是一个简单的产品=> MediaSet关系。

我阅读了一些建议使用自定义Formatter类在选择列表值和类型之间进行转换的博文等。

但我无法弄清楚配置的工作原理。到目前为止,我一直在使用java配置类。

我有两个问题:

  1. Formatter是否是正确的界面?我也读过有关转换器的内容,听起来好像我应该使用它。

  2. 如何使用java配置注册自定义格式化程序?

  3. 我的配置类看起来像:

    @Configuration
    @ComponentScan("com.mvc")
    @EnableWebMvc
    @EnableTransactionManagement
    public class WebConfig extends WebMvcConfigurerAdapter {
    
    ....
    
       @Bean
        public ConversionService conversionService() {
            DefaultFormattingConversionService bean = new DefaultFormattingConversionService();
            bean.addFormatter(new ImageSetFormatter());
            return bean;
        }
    
        ...
    }
    

1 个答案:

答案 0 :(得分:0)

哦,没关系,我想出来,实际上非常容易,但我会在这里留下问题以防万一其他人正在寻找它。

超类中有一个方法可以注册它:

要注册客户格式化程序,只需将上面替换为:

public class WebConfig extends WebMvcConfigurerAdapter {


 ...

    @Override
    public void addFormatters(FormatterRegistry formatterRegistry) {
        formatterRegistry.addFormatter(new ImageSetFormatter());
    }
}