Enterprise Iniciante

Substitua o WebMvcConfigurerAdapter removido por WebMvcConfigurer e preserve a autoconfiguração de MVC do Spring Boot.

✕ Spring Boot 1.x
@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {
    @Override
    public void addViewControllers(
            ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName("home");
    }
}
✓ Spring Boot 4.x
@Configuration
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addViewControllers(
            ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName("home");
    }
}
Viu um problema com este código? Nos avise.
🧹

Sem dependência do adaptador removido

WebMvcConfigurer fornece métodos default, eliminando a necessidade de estender uma superclasse adaptadora.

⚙️

Preserva os padrões do Boot

Sem @EnableWebMvc, o Spring Boot continua configurando automaticamente a infraestrutura de MVC.

🎯

Sobrescreva apenas o necessário

Implemente a interface e personalize somente o hook de MVC exigido pela aplicação.

Abordagem Antiga
WebMvcConfigurerAdapter com @EnableWebMvc
Abordagem Moderna
WebMvcConfigurer com autoconfiguração do Spring Boot
Desde o JDK
17
Dificuldade
Iniciante
Configuração de MVC no Spring Boot
Disponível

Disponível no Spring Boot 4.0 com Spring Framework 7.0 (requer Java 17+)

Aplicações Spring Boot 1.x normalmente estendiam WebMvcConfigurerAdapter porque interfaces Java não podiam fornecer métodos default. Versões modernas do Spring Framework fornecem implementações default diretamente em WebMvcConfigurer; portanto, implemente a interface e sobrescreva apenas os métodos necessários. Em uma aplicação Spring Boot, não adicione @EnableWebMvc a menos que queira intencionalmente assumir controle total da configuração de MVC, pois isso desativa a autoconfiguração de MVC do Boot, incluindo seus conversores habituais, o tratamento de recursos estáticos e outros padrões.