【问题标题】:How to add implemetation of RequestDataValueProcessor using code and not as xml configuration如何使用代码而不是 xml 配置添加 RequestDataValueProcessor 的实现
【发布时间】:2013-01-27 13:22:00
【问题描述】:

我有一个像下面这样的豆子

<bean name="requestDataValueProcessor"    class="com.bom.DOMRequestDataValueProcessor"/>

DOMRequestDataValueProcessor 实现了 RequestDataValueProcessor。

我正在使用以下类而不是通过 xml 配置文件进行 mvc 配置。

   @Configuration
   @EnableWebMvc
   public class WebConfig extends WebMvcConfigurerAdapter {

   }

如何在配置中添加上述bean?

【问题讨论】:

    标签: spring model-view-controller spring-security


    【解决方案1】:

    来自 Pro Spring Mvc 书:

    要配置RequestDataValueProcessor,我们需要将它添加到 应用程序上下文,然后使用名称注册它, requestDataValueProcessor。这是框架使用的名称 检测注册的实例。

    所以你可能需要做类似的事情:

    @Configuration
    @EnableWebMvc
    @ComponentScan(basePackages = {"com.bom"})
    public class WebConfig extends WebMvcConfigurerAdapter {
    
        @Bean
        public RequestDataValueProcessor
        requestDataValueProcessor() {
            return new DOMRequestDataValueProcessor();
        }
    
    }
    

    【讨论】:

      【解决方案2】:

      您应该启用组件扫描。请参阅 Spring 文档:http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-java

      <beans>
        <context:component-scan base-package="com.acme"/>
      </beans>
      

      【讨论】:

        【解决方案3】:
        @Bean(name = { "requestDataValueProcessor" })
        public DOMRequestDataValueProcessor getRequestDataValueProcessor() {
        final DOMRequestDataValueProcessor domRequestDataValueProcessor = new DOMRequestDataValueProcessor();
                return domRequestDataValueProcessor;
            }
        

        【讨论】:

          猜你喜欢
          • 2011-03-25
          • 1970-01-01
          • 1970-01-01
          • 2020-12-07
          • 1970-01-01
          • 1970-01-01
          • 2020-11-28
          • 2016-11-07
          相关资源
          最近更新 更多