Spring3 MVC請求參數獲取的幾種方法
阿新 • • 發佈:2017-08-17
setup return 異常 pathvaria method let 方法 ces 解決
一、 [email protected]
@RequestMapping(value="user/{id}/{name}",method=RequestMethod.GET) public String printMessage1(@PathVariable String id,@PathVariable String name, ModelMap model) { System.out.println(id); System.out.println(name); model.addAttribute("message", "111111"); return "users"; }
例如,訪問user/123/lei路徑時,執行以上方法,其中,參數id=123,name=lei
二、 @ModelAttribute獲取POST請求的FORM表單數據
JSP表單如下
<form method="post" action="hao.do"> a: <input id="a" type="text" name="a"/> b: <input id="b" type="text" name="b"/> <input type="submit" value="Submit" /> </form>
Java Pojo如下(可以寫get set 方法,不要寫有參構造)
public class Pojo{ private String a; private int b; }
Java Controller如下
@RequestMapping(method = RequestMethod.POST) public String processSubmit(@ModelAttribute("pojo") Pojo pojo) { pojo.getA();//如果有此方法可以寫 return "helloWorld"; }
三、 直接用HttpServletRequest獲取
@RequestMapping(method = RequestMethod.GET) public String get(HttpServletRequest request, HttpServletResponse response) { System.out.println(request.getParameter("a")); return "helloWorld"; }
四、 [email protected]
[email protected]
當請求參數a不存在時會有異常發生,可以通過設置屬性required=false解決,
例如: @RequestParam(value="a", required=false)
Controller如下
@RequestMapping(value = "/requestParam", method = RequestMethod.GET) public String setupForm(@RequestParam("a") String a, ModelMap model) { System.out.println(a); return "helloWorld"; }
Spring3 MVC請求參數獲取的幾種方法