RequestMapping注解的使用和常见的GET和POST请求方式
1、使用说明
-
作用:用于建立请求URL和处理请求方法之间的对应关系。
-
出现位置:
-
类上:
请求 URL的第一级访问目录。此处不写的话,就相当于应用的根目录。写的话需要以/开头。它出现的目的是为了使我们的 URL 可以按照模块化管理,例如:
账户模块:
/account/add
/account/update
/account/delete …
订单模块:
/order/add
/order/update
/order/delete
红色的部分就是把RequsetMappding写在类上,使我们的URL更加精细。
-
方法上:
请求URL的第二级访问目录,可以窄化请求路径
-
-
属性:
value:用于指定请求的URL。它和path属性的作用是一样的。
method:用于指定请求的方式。
注意:以上属性只要出现2个或以上时,他们的关系是与的关系。
2、窄化路径示例
使用二级目录访问
@Controller
@RequestMapping("/account")
public class AccountController {
@RequestMapping("/findAccount")
public ModelAndView findAccount() {
ModelAndView mv = new ModelAndView();
mv.addObject("msg", "欢迎你 springmvc");
mv.setViewName("success");
return mv;
}
}
在jsp页面实现跳转
<a href="/account/findAccount">窄化路径</a>
3、method属性示例
- 描述需要使用指定的请求方式来请求该方法
@Controller
@RequestMapping("/account")
public class AccountController {
//指定的请求方式
@RequestMapping(value = "/findAccount1", method = RequestMethod.POST)
public ModelAndView findAccount1() {
ModelAndView mv = new ModelAndView();
mv.addObject("msg", "欢迎你 springmvc");
mv.setViewName("success");
return mv;
}
}
- 测试:在index.jsp里使用get方式请求
<a href="/account/findAccount1">请求方式</a>
结果:
- 我们再换一种请求方式
<form action="account/findAccount1" method="post">
<input type="submit" value="保存账户,post 请求">
</form>
结果:
4、当然不同的请求方式我们也可以使用对应的@PostMapping或@GetMapping注解
常见的请求方法对应的请求方式有下面
GET请求有哪些
- form标签 (在method设置为get的时候)
- a标签
- link标签 (引入css文件的时候)
- Script标签 (引入javascript文件的时候)
- img标签引入图片
- iframe引入html页面
- 浏览器地址栏中输入地址后敲回车
POST请求有哪些 - form标签 method=post