Spring MVC开发中,接收前端参数并解析参数是非常重要的,我总结了如下接收参数的方式:
方式一:
普通方式接收
1 @RequestMapping("/index")
2 public String getUserName(String username) {
3 System.out.println("username is:"+username);
4 return "index";
5 }
参数写在Controller的方法的形参中,适用于get, post方式提交。参数名必须和前台的一致。
方式二:
接收HttpServletRequest
1 @RequestMapping("/index")
2 @ResponseBody
3 public String getUserName(HttpServletRequest request) {
4 String username = request.getParameter("username");
5 return username;
6 }
可以通过getParameter()获取POST/GET传递的参数值;它用于客户端重定向时,即点击了链接或提交按扭时传值用,即用于在用表单或url重定向传值时接收数据。getParameter只是应用服务器在分析你送上来的request页面的文本时,取得你设在表单或url重定向时的值。
方式三:
通过@RequestParam注解
1 @RequestMapping(value="/index")
2 public String getUserName(@RequestParam(value="name",required=false)String username, Model model){
3 System.out.println(username);
4 model.addAttribute("hello", "这是用action传过来的值:"+ username);
5 return "index";
6 }
方式四:
通过bean来接收json
1 @RequestMapping("/index")
2 public @ResponseBody User getUserName(@RequestBody User u) {
3 System.out.pringln("name: " + u.getName());
4
5 User user = new User();
6 user.setName(request.getParameter("name"));
7
8 return user;
9 }
网友评论