目录
@RequestMapping注解的使用
通过@RequestMapping注解可以定义不同的处理器映射规则。
一、URL路径映射
@RequestMapping(value="item")或@RequestMapping("/item")
value的值是数组,可以将多个url映射到同一个方法
@RequestMapping(value={"itemList","itemListAll"})
public ModelAndView queryItemList() {
ModelAndView mav = new ModelAndView();
//查询商品信息
List<Item> itemList = itemService.getItemList();
//把商品数据放到模型中
mav.addObject("itemList", itemList);
//设置逻辑视图名
mav.setViewName("itemList");
return mav;
}
二、添加在类上面
在class上添加@RequestMapping(url)指定通用请求前缀,限制此类下的所有方法请求url必须以请求前缀开头,可以用此方法对url进行分类管理。
@Controller
@RequestMapping("item")
public class ItemController {
@Autowired
private ItemService itemService;
@RequestMapping("itemList")
public ModelAndView itemList() {
ModelAndView mav = new ModelAndView();
List<Item> itemList = itemService.getItemList();
mav.addObject("itemList", itemList);
mav.setViewName("itemList");
return mav;
}
......
}
此时需要进入itemList()方法的请求url为:
http://localhost:8080/项目名/item/itemList.action
三、请求方法限定
除了可以对url进行设置,还可以限定请求进来的方法
1.限定get方法
@RequestMapping(method = RequestMethod.GET)
如果通过POST访问则报错:
2.限定post方法
@RequestMapping(method = RequestMethod.POST)
3.post和get都可以
@RequestMapping(method = {RequestMethod.GET,RequestMethod.POST})