介绍
下面就来介绍一下RequestMapping中常用注解的用法。
RequestMapping中有六个属性分别是:
value: 指定请求的实际地址,指定的地址可以是URI Template 模式;
method: 指定请求的method类型, GET、POST、PUT、DELETE等;
consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
params: 指定request中必须包含某些参数值是,才让该方法处理。
headers: 指定request中必须包含某些指定的header值,才能让该方法处理请求。
1.RequestMapping 地址映射的基本写法:
@RequestMapping(value="/test",method = RequestMethod.POST)
private String tableShow(Model model, Entity entity){
system.out.printly("输出: "+ entity);
return "forward:/test.jsp";
}
<form id="loginTestForm" action="test" method="post">
<input type="submit" value="submit">
</form>
2.RequestMapping带参数的情况:
@RequestMapping(value = "test2",method = RequestMethod.POST)
public String testLogin(@RequestParam("test2Id") String test2Id){
System.out.println("输入的参数为:"+test2Id);
return "redirect:test2.jsp";
}
表单提交
<form id="" action="test2" method="post">
<input type="text" name="test2Id"/></br>
<input type="submit" value="submit"/>
</form>
超链接拼接
<a href="/test2?test2Id=1"></a><!-- 值在多几个后面用& 例 /test2?test2Id=1&test2Name='wangmx' -->
3.RequestMapping中获取URL中的参数信息:
通过{变量名称}这样的写法,就可以在@PathVariable("变量名") 实现参数的调用了。
@RequestMapping(value = "test3/{test3Id}",method = RequestMethod.POST)
public String testLogin(@PathVariable("test3Id") String test3Id){
System.out.println("输入的URL参数为:"+test3Id);
return "redirect:test3.jsp";
}
当然也可以绑定多个参数
@RequestMapping(value = "test4/test4Id/{test4Id}/test4Name/{test4Name}",method = RequestMethod.POST)
public String testLogin(@PathVariable("test4Id") String test4Id,@PathVariable("test4Name") String test4Name){
System.out.println("输入的URL参数为1:"+test4Id);
System.out.println("输入的URL参数为2:"+test4Name;
return "redirect:test4.jsp";
}