springmvc请求参数获取(自动绑定)的几种方法
1、直接把表單的參數寫在Controller相應的方法的形參中,適用于get方式提交,不適用于post方式提交。
/*** 1.直接把表單的參數寫在Controller相應的方法的形參中* @param username* @param password* @return*/@RequestMapping("/addUser1")public String addUser1(String username,String password) {System.out.println("username is:"+username);System.out.println("password is:"+password);return "demo/index";}2、通過HttpServletRequest接收,post方式和get方式都可以。
/*** 2、通過HttpServletRequest接收* @param request* @return*/@RequestMapping("/addUser2")public String addUser2(HttpServletRequest request) {String username=request.getParameter("username");String password=request.getParameter("password");System.out.println("username is:"+username);System.out.println("password is:"+password);return "demo/index";}3、通過一個bean來接收,post方式和get方式都可以。
(1)建立一個和表單中參數對應的bean
(2)用這個bean來封裝接收的參數
/*** 3、通過一個bean來接收* @param user* @return*/@RequestMapping("/addUser3")public String addUser3(UserModel user) {System.out.println("username is:"+user.getUsername());System.out.println("password is:"+user.getPassword());return "demo/index";}4、通過@PathVariable獲取路徑中的參數
/*** 4、通過@PathVariable獲取路徑中的參數* @param username* @param password* @return*/@RequestMapping(value="/addUser4/{username}/{password}",method=RequestMethod.GET) public String addUser4(@PathVariable String username,@PathVariable String password) {System.out.println("username is:"+username);System.out.println("password is:"+password);return "demo/index";}例如,訪問http://localhost/SSMDemo/demo/addUser4/lixiaoxi/111111?路徑時,則自動將URL中模板變量{username}和{password}綁定到通過@PathVariable注解的同名參數上,即入參后username=lixiaoxi、password=111111。
5、使用@ModelAttribute注解獲取POST請求的FORM表單數據
Jsp表單如下:
Java Controller如下:
/*** 5、使用@ModelAttribute注解獲取POST請求的FORM表單數據* @param user* @return*/@RequestMapping(value="/addUser5",method=RequestMethod.POST)public String addUser5(@ModelAttribute("user") UserModel user) {System.out.println("username is:"+user.getUsername());System.out.println("password is:"+user.getPassword());return "demo/index";}6、用注解@RequestParam綁定請求參數到方法入參
當請求參數username不存在時會有異常發生,可以通過設置屬性required=false解決,例如: @RequestParam(value="username", required=false)
/*** 6、用注解@RequestParam綁定請求參數到方法入參* @param username* @param password* @return*/@RequestMapping(value="/addUser6",method=RequestMethod.GET)public String addUser6(@RequestParam("username") String username,@RequestParam("password") String password) {System.out.println("username is:"+username);System.out.println("password is:"+password);return "demo/index";}?
轉載于:https://www.cnblogs.com/weixupeng/p/9836163.html
總結
以上是生活随笔為你收集整理的springmvc请求参数获取(自动绑定)的几种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WordCount结对拓展
- 下一篇: MongoDB对指定键进行排序