参考链接:http://www.cnblogs.com/xiaoxi/p/5695783.html
我们以用户登录为例,用户登录涉及两个参数:
账号:loginName
密码:password
这是前台登录视图:
相应的前台源码:
<form action="login">
帐号:<input type="text" name="loginName" > <br/>
密码:<input type="text" name="password" > <br/>
<input type="submit" value="登录">
</form>
------------------------------------------------------
介绍SpringMVC最常用的3种取值方法
------------------------------------------------------
方法1:参数直接获取
ps: 函数参数名与请求参数名保持一致。
@RequestMapping("/login")
public String login(String loginName,String password){
System.out.println("方法1:参数直接获取");
System.out.println("loginName:"+loginName);
System.out.println("password:"+password);
return "loginSuccess";
}
运行结果:
方法2:对象获取
ps:建立一个对象,属性名对应请求参数名保持一致,并生成相应的getter()和setter()方法。
建立对象User:
package com.springdemo.entities;
public class User {
private String loginName;
private String password;
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
开始接收:
@RequestMapping("/login")
public String login(User u){
System.out.println("方法2:对象获取");
System.out.println("loginName:"+u.getLoginName());
System.out.println("password:"+u.getPassword());
return "loginSuccess";
}
运行结果:
方法3:参数绑定获取
ps:方法1的变种,但该接收参数名可以随意,通过注解@RequestParam指明即可。
@RequestMapping("/login")
public String login(@RequestParam("loginName") String name,@RequestParam("password") String pwd){
System.out.println("方法3:参数绑定获取");
System.out.println("loginName:"+name);
System.out.println("password:"+pwd);
return "loginSuccess";
}