SpringMVC 应用开发
1 基础概念介绍
2 返回值处理
3 参数绑定处理
4 RequestMapping注解
5 RESTful支持
6 拦截器应用
7 CORS跨域解决方案
8 Mock测试(模拟测试)
9 ControllerAdvice
10 乱码解决
11 非注解开发方式
RequestMapping注解
一、属性介绍
1.1 value属性
-
用法如下:
@RequestMapping(value="/item")
@RequestMapping("/item“)
@RequestMapping(value={"/item",”/queryItem”}) -
请求URL映射,作用:
1、用于映射URL和HandlerMethod方法。
2、限制此类下的所有方法的访问请求url必须以请求前缀开头,对url进行模块化分类管理。
@RequestMapping("item")
@Controller
public class ItemController {
// 访问时的URL是 /item/findItem
@RequestMapping("findItem")
public String findItem(Model model) {
model.addAttribute("msg", "ItemController...findItem方法执行了");
return "success";
}
}
1.2 method属性
作用:限定请求URL只能通过指定的method请求方式去访问该 HandlerMethod.
@RequestMapping(value="/findItem",method=RequestMethod.GET) @RequestMapping(value="/findItem",method=RequestMethod.POST) @RequestMapping(value="/findItem",method= {RequestMethod.GET,RequestMethod.POST})
1.3 params属性
作用:通过设置 params 参数条件,进行访问 HandlerMethod 的限制。条件过滤。
- URL请求(JSP代码)
<a href="item/removeItem?name=iphone6&price>5000">删除商品,金额大于 5000</a> <br />
<a href="item/removeItem?name=iphoneXs&price>7000">删除商品,金额大于 7000</a>
- Controller方法
@RequestMapping(value = "removeItem", params = {"name", "price>5000"})
public String removeItem(Model model) {
model.addAttribute("msg", "ItemController...removeItem方法执行 了");
return "success";
}
1.4 其他两个属性
@RequestMapping注解中的consumes和produces分别是为请求头和响应头设置contentType
@RequestMapping(value = "returnString", produces = "text/plain;charset=UTF- 8")