一 springMVC中基于注解的控制器
-
为什么要引入基于注解的控制器
因为传统的控制器既需要在配置文件里面部署映射,同时一次只能编写一个处理方法,
而基于注解的控制器可以再一个控制器里面编写多个处理方法,从而处理多个请求。
基于注解的控制器也不需要配置文件里面部署映射,只需要使用RequestMapping注解一个方法进行请求处理。
1.2基于注解的控制器的限制条件
SpringMVC使用扫描机制找到基于注解的控制器,前提是配置文件里面申明spring-context,并使用context:component-scan/指定控制器类的基本包。
配置文件里面 -
常用的注解类型
2.1Controller
处理器类可以使用 @Controller注解
类前加,声明类的实例为一个控制器
2.2RequestMapping
2.2.1方法级别注解
注解的value属性将请求URL映射到方法,作用在处理方法上
2.2.2类级别注解
控制器类中的所有方法都映射为类级别的请求。
3.Controller接收请求参数的常见方式
3.1 通过bean去接收请求参数(bean的属性名称与请求参数的名称相同)
3.2通过处理方法的形参接收请求参数
(注意当形参与请求参数名不一致时,并不会报404)
3.3通过HttpServletRequest接收请求参数
3.4通过@PathVariable接收URL中的请求参数
3.5 通过@RequestParam接收请求参数
3.6通过@ModelAttribute接收请求参数
@ModelAttribute写在形参前 将多个请求参数封装到一个实体对象里面