Servlet3.0——整合SpringMVC的Demo

博客介绍了Spring容器和SpringMVC容器不需要@Configuration注解,提及controller、service等内容。还阐述了AbstractAnnotationConfigDispatcherServletInitializer实现类拦截路径的配置,如配置“/”拦截除*.jsp外所有请求,“/*”会拦截*.jsp导致无法解析。

1、Spring容器:并不需要@Configuration注解

@ComponentScan(value = "com.bdm", excludeFilters = {
		@Filter(type = FilterType.ANNOTATION, classes = { Controller.class }) })
public class RootConfig {

}

2、SpringMVC容器:并不需要@Configuration注解

@ComponentScan(value = "com.bdm", useDefaultFilters = false, includeFilters = {
		@Filter(type = FilterType.ANNOTATION, classes = { Controller.class }) })
public class AppConfig {

}

3、controller

@Controller
public class HelloController {

	@Autowired
	HelloService helloService;
	
	@ResponseBody
	@RequestMapping("/hello")
	public String sayHello(){
		String sayHello = helloService.sayHello("tomcat");
		return sayHello;
	}
}

4、service

@Service
public class HelloService {

	public String sayHello(String name){
		return "Hello " + name;
	}
}

5、AbstractAnnotationConfigDispatcherServletInitializer的实现类

public class MyWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {

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

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

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

}

拦截的路径,此处配置的"/":表示拦截除*.jsp之外的所有请求,*.jsp的解析是由tomcat的jsp引擎负责的;若配置成"/*"则会连*.jsp也会拦截,导致jsp无法解析

6、访问:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值