2017-12-29 16 views
0

Ich arbeite für eine Internetfirma.In letzter Zeit habe ich ein Problem in einer Konfigurationsdatei der SpringMVC.Funktionieren die @Configuration- und @Bean-Annotationen in diesem Code?

@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; 
    } 
} 

Diese Klasse stammt aus einem externen Jar-Paket.

In meiner Mvc-Core-config.xml gibt es eine Zeile:

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

ich in dieser Klasse, wenn diese Feder Anmerkungen wissen will arbeiten?

+0

Wie ich verstehe, meinen Sie @Configuration, –

Antwort

0

Wie ich verstehe Du @Configuration meinst, wenn es diese Klasse so wird eine Konfigurationsklasse in zwei Fällen 1) sind Sie den Pass zu dieser Klasse in Ihrem Dispatcher Servlet 2) In der Hauptkonfigurationsdatei hinzufügen (Klasse das mit @EnableWebMvc anotated Sie importieren diese Klasse mit @Import oder wenn Sie @ComponentScan setzen, wird diese Klasse automatisch scannen

Verwandte Themen