【SpringMVC】04:避免 “Spring错误地加载了SpringMVC的bean”

39 阅读1分钟
  • SpringMVC相关bean(表现层bean)
  • Spring控制的bean
    • 业务bean(Service)
    • 功能bean(DataSource等)

因为功能不同,那如何避免“Spring错误加载了SpringMVC的bean”? 加载Spring控制的bean的时候,排除掉SpringMVC控制的bean

@Configuration
//@ComponentScan({"com.android.service", "com.android.dao"})
@ComponentScan(value = "com.android",
        excludeFilters = @ComponentScan.Filter(
                type = FilterType.ANNOTATION,
                classes = Controller.class
        )
)
//com.android.config.ServletContainersInitConfig

public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {

    @Override
    protected Class<?>[] getRootConfigClasses() {
        return new Class[]{SpringConfig.class};
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class[]{SpringMvcConfig.class};
    }

    @Override
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
}