복붙노트

[SPRING] Spring 4에서 register-defaults = "false"와 같은 것은 무엇입니까?

SPRING

Spring 4에서 register-defaults = "false"와 같은 것은 무엇입니까?

Spring 4의 XML없는 프로젝트에서 register-defaults = "false"로 설정하려면 어떻게해야합니까?

<mvc:annotation-driven register-defaults="false">
  <mvc:message-converters>
    <bean class="myproject.MyCustomHttpMessageConverter"/>
  </mvc:message-converters>
</mvc:annotation-driven>

현재이 구성이 있습니다.

@Configuration
@EnableWebMvc
@ComponentScan
public class TestDataConfig extends WebMvcConfigurerAdapter {

    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
        converters.add(converter);
    }
}

고맙습니다

해결법

  1. ==============================

    1.Java 구성은 그대로 XML 구성에서 register-defaults = "false"를 갖는 것과 유사합니다. 아무 것도 할 필요가 없습니다. 그러나 기본값을 등록하려면 WebMvcConfigurationSupport에서 확장하고 아래 코드 단편에 지정된 마지막 행을 추가해야합니다.

    Java 구성은 그대로 XML 구성에서 register-defaults = "false"를 갖는 것과 유사합니다. 아무 것도 할 필요가 없습니다. 그러나 기본값을 등록하려면 WebMvcConfigurationSupport에서 확장하고 아래 코드 단편에 지정된 마지막 행을 추가해야합니다.

    @Configuration
    @EnableWebMvc
    @ComponentScan
    public class TestDataConfig extends WebMvcConfigurationSupport {
    
        @Override
        public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
            final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
            converters.add(converter);
            super.addDefaultHttpMessageConverters(); // Have to call this explicitly to register Default Message Converters.
        }
    }
    
  2. from https://stackoverflow.com/questions/25881212/what-is-the-equivalent-of-register-defaults-false-in-spring-4 by cc-by-sa and MIT license