今天的无语bug
导入mvc的注释驱动的时候,一定要选择mvc的那个,今天不小心选了别的,导致一直出cacheXXX的错误
1 @RequestMapping的使用
核心功能:URL路径映射
1.1 ★★★URL路径映射
之前已经使用过了:value属性
1.1.1 映射多个请求URL
String[] 👉 多个请求URL
1.1.2 使用通配符
( * )
1.2 ★窄化请求
user/login
user/register
user/modify
user/logout
写起来简单了
方便写过滤器(拦截器) 👉 处理请求URL前缀都为user的这样的请求
1.3 请求方法限定 method → RequestMethod[]
多个值之间的关系是or
限定请求方法
引申@GetMapping、@PostMapping
@GetMapping就是限定了请求方法为GET的@RequestMapping
@PostMapping就是限定了请求方法为POST的@RequestMapping
1.4 请求参数限定 params → String[]
限定你发送的请求要携带的参数有哪些,多个参数之间的关系是and
这里,浏览器发送过来的请求必须包含username和password两个参数,不然就会报下面600的错误
403、401是你没有访问权限
302重定向
1.5 请求头限定 headers → String[]
要包含哪些请求头
代码
请求
1.5.1 Accept对应的值的限定 produces → String[]
语法:xxx/xxx
1.5.2 Content-Type对应的值的限定 consumes → String[]
语法:xxx/xxx
正文类型
JSON请求的Content-Type一定是application/json
2 Handler方法返回值
2.1 视图相关
单体应用
2.1.1 ModelAndView
2.1.2 String
作为视图名 → ModelAndView中的ViewName
2.2 ★Json
前后端分离应用
Object 👉 String
@ResponseBody
注意:不管使用的是哪一个Json工具(jackson、fastjson、gson)、无参构造方法和getter、setter方法都要有
写在类上