Controller加载控制与业务bean加载控制
-
-
Spring控制的bean
-
业务bean(Service)
-
功能bean(DataSource等)
-
-
SpringMVC相关bean加载控制
-
SpringMVC加载的bean对应的包均在com.itheima.controller包内
-
-
Spring相关bean加载控制
-
方式一:Spring加载的bean设定扫描范围为com.itheima,排除掉controller包内的bean
-
方式二:Spring加载的bean设定扫描范围为精准范围,例如service包、dao包等
-
-
-
-
类型:类注解
-
@Configuration @ComponentScan(value = "com.itheima", excludeFilters = @ComponentScan.Filter( type = FilterType.ANNOTATION, classes = Controller.class //Controller ---> import org.springframework.stereotype.Controller; ) ) public class SpringConfig { } -
-
public class ServletContainersInitConfig extends AbstractDispatcherServletInitializer {
protected WebApplicationContext createServletApplicationContext() {
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
ctx.register(SpringMvcConfig.class);
return ctx;
}
protected WebApplicationContext createRootApplicationContext() {
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
ctx.register(SpringConfig.class);
return ctx;
}
protected String[] getServletMappings() {
return new String[]{"/"};
}
}
简化格式
public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer{
protected Class<?>[] getServletConfigClasses() {
return new Class[]{SpringMvcConfig.class};
};
protected String[] getServletMappings() {
return new String[]{"/"};
}
protected Class<?>[] getRootConfigClasses() {
return new Class[]{SpringConfig.class};
}
}

浙公网安备 33010602011771号