Spring mvc 针对get 和 post 请求参数的不同接收方式

来源:互联网 发布:微信小游戏源码下载 编辑:程序博客网 时间:2024/05/17 08:21

GET 请求

针对与于get请求spring mvc控制层主要接收方式如下

1.直接在controller接收参数,参数名称要与getURl中传递的参数一致

get url : https://localhost:8080/demo/login?&userName=bob&passWord=123


@Controller

public class demo {

@requestMapping(value = "/login" , method=RequestMethod.GET)

public String login(String userName,  String passWord) {

//这两个参数直接可以获取geturl中的传递过来的值

if(("bob").equals userName && ("123").equals(passWord) ) {

return "success";

}

}

}

get url : https://localhost:8080/demo/login?&userName=joe

2.使用 request.getQueryString() 获取spring MVC get请求的参数

@requestMapping(value="/addUser" , method=RequestMethod.GET)

public String addUser(HttpServletRequest request) {

//userName="joe"

String userName = request.getQueryString();

}


3.使用HttpServletRequest 接收(注意,该方法Post请求也同样试用

@requestMapping(value="/addUser" , method=RequestMethod.GET)

public String addUser(HttpServletRequest request) {

//userName="joe"

String userName =  request.getParamter("userName");

String pass = request.getParamter("passWord");

}


4.过一个bean来接收注意,该方法Post请求也同样试用

@requestMapping(value="/addUser" , method=RequestMethod.GET)

public String addUser(UserEntity user) {

String userName = user.getUserName();

String passWord = user.getPassWord();

}


5.用注解@RequestParam绑定请求参数到方法入参    当请求参数username不存在时会有异常发生,可以通过设置属性required=false解决,例如: @RequestParam(value="username", required=false)
(重要注意
"Content-Type"="application/application/json",只适用get
若"Content-Type"="application/x-www-form-urlencoded",post get都可以
)
@RequestMapping(value="/addUser",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";    }

POST请求

1.、使用@ModelAttribute注解获取POST请求的FORM表单数据
  /**     * 4、使用@ModelAttribute注解获取POST请求的FORM表单数据      * @param user     * @return     */    @RequestMapping(value="/addUser",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";    }
2.get请求方式3

3.get请求方式4

4.get请求方式5


原创粉丝点击