8.2应用案例:SpringMVC参数绑定
参数绑定支持的数据类型:
参数类型推荐使用包装数据类型,因为基础数据类型不可以为null
整形:Integer、int
字符串:String
单精度:Float、float
双精度:Double、double
布尔型:Boolean、boolean
说明:对于布尔类型的参数,请求的参数值为true或false。
案例程序结构:

其中两个XML配置文件内容不变,Manager.java实体类代码如下:
package entity; public class Manager { String uname; String upw; public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } public String getUpw() { return upw; } public void setUpw(String upw) { this.upw = upw; } } |
Regist.jsp文件内容如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>注册</title> </head> <body> <form action="registermanager" method="post"> 用户名: <input type="text" name="uname" /><br /> 密 码: <input type="text" name="upw" /><br /> <input type="submit" value="注 册"/> </form> </body> </html> |
RegisterController.java控制器类代码如下:
package controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import entity.Manager; @Controller public class RegisterController { @RequestMapping("/registermanager") public String regist(String uname,String upw,Manager m){ System.out.println("简单数据绑定 "+uname+" "+upw); System.out.println("对象数据绑定 "+m.getUname()+" "+m.getUpw()); return ""; } } |
在这个控制器类里,为演示方便,我们为方法regist(String uname,String upw,Manager m)设定了三个数据绑定参数,前两个为简单数据类型,后一个为对象类型。在方法里面,我们向控制台输出了三个参数接收的数据,运行程序如下图

点击注册按钮,结果如下

从控制台输出结果来看,三个参数都正确的接收到了表单传递过来的信息。
需要注意的是,前两个简单数据类型在进行数据绑定时应该保证表单中的文本框的name属性名称应该与参数的变量名称一致;后一个对象数据类型在进行数据绑定时应该保证表单中的文本框的name属性名称与对象的对应属性名称一致。

