簡體   English   中英

@Configuration和@Bean批注在此代碼中起作用嗎?

[英]Do the @Configuration and @Bean annotations work in this code?

我在一家互聯網公司工作。最近我在SpringMVC的配置文件中有問題。

@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
    public WebConfig() {
    }
    protected void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        converters.add(new ByteArrayHttpMessageConverter());
        ClassLoader classLoader = this.getClass().getClassLoader();
        if (ClassUtils.isPresent("javax.xml.bind.Binder", classLoader)) {
            converters.add(new Jaxb2RootElementHttpMessageConverter());
        }
        if (ClassUtils.isPresent("com.fasterxml.jackson.databind.ObjectMapper", classLoader)) {
            converters.add(new MappingJackson2HttpMessageConverter());
        }
        StringHttpMessageConverter stringConverter = new StringHttpMessageConverter();
        stringConverter.setWriteAcceptCharset(false);
        converters.add(stringConverter);
        converters.add(new ResourceHttpMessageConverter());
        converters.add(new SourceHttpMessageConverter());
        converters.add(new XmlAwareFormHttpMessageConverter());
    }
    @Bean
    public RequestMappingHandlerAdapter requestMappingHandlerAdapter() {
        RequestMappingHandlerAdapter adapter = super.requestMappingHandlerAdapter();
        List<HandlerMethodReturnValueHandler> handlers = new ArrayList();
        handlers.add(new ModelAndViewMethodReturnValueHandler());
        handlers.add(new ModelMethodProcessor());
        handlers.add(new ViewMethodReturnValueHandler());
        handlers.add(new HttpEntityMethodProcessor(this.getMessageConverters()));
        handlers.add(new ModelAttributeMethodProcessor(false));
        handlers.add(new NullableRequestResponseBodyMethodProcessor(this.getMessageConverters()));
        handlers.add(new ViewNameMethodReturnValueHandler());
        handlers.add(new MapMethodProcessor());
        if (!CollectionUtils.isEmpty(adapter.getModelAndViewResolvers())) {
            handlers.add(new ModelAndViewResolverMethodReturnValueHandler(adapter.getModelAndViewResolvers()));
        } else {
            handlers.add(new ModelAttributeMethodProcessor(true));
        }
        adapter.setReturnValueHandlers(handlers);
        return adapter;
    }
}  

此類來自外部jar包。

在我的mvc-core-config.xml中有一行:

<bean class="com.wosai.upay.common.config.WebConfig"/>

我想知道這些春季注釋是否可以在此類中使用?

據我了解,您的意思是@Configuration ,如果是這樣,則在兩種情況下此類將是配置類1)您將在Passpatcher Servlet中添加對該類的傳遞2)在主配置文件中(用@EnableWebMvc ),您將使用@Import導入此類,或者如果您輸入@ComponentScan則將自動掃描此類

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM