1 Controller
- 被Controller注解的类将会是一个控制器类,即MVC中的C的角色
- 它不需要继承其它的类,也不需要实现接口
- 它也不用@Component来注解,但也会被@ComponentScan扫描到,并会被作为Spring的bean置于容器中进行管理
2 RestController
- 它本质上是一个组合注解,即@Controller+@ResponseBody的组合
- 默认情况下,它注解的每一个控制器方法都等于使用了@ResponseBody注解,也就是说,方法的返回值被写到响应体中
- 方法的返回值将被写入到HTTP的响应体中,这些内容
- 不放到模型中
- 不会解释为视图名
3 RequestMapping
- 可以注解类或是方法
- 用于映射请求与处理方法
- 即URL和对应的方法
- path与value互为别名,用于配置URI
- method为映射的请求配置参数标识
- consumes为配置请求的数据类型,如JSON
- produces为配置响应的数据类型,如application/json
- 类似的几个注解
- @GetMapping
- @PostMapping
- @PutMapping
- @DeleteMapping
- @PatchMapping
4 PathVariable【单一参数】
- 将请求URI中的变量,自动转化为方法的参数类型
5 MatrixVariable【复杂参数】
- 规范
- 参数的名称与值使用K-V形式
- 多个参数间用分号;隔开
- 一个参数有多个值用逗号,隔开
6 RequestParam
- 获取请求中的参数
- 一般是在一个请求体中获取相应的参数,例如表单的提交
- 特别是:文件上传时,多一个MultipartFile参数,在方法体中直接输出文件的byte数组