(1)RequestParam
作用:把请求中指定名称的参数给控制器中的形参赋值
属性:value:请求参数的名称
required:请求参数中是否必须提供此参数。默认值:true,表示必须提供;如果不提供将报错
案例
@Controller
@RequestMapping("/param")
public class ParamController {
@RequestMapping("/testParam")
public String testParam(String username){
System.out.println("zhixingle.....");
System.out.println(username);
return "success";
}
}
<a href="param/testParam?username=hhee">请求参数绑定</a>
注意颜色部分,username在testParam方法的形参中,不需要再进行显示的获取就可以自动获取数据
(2)案例1 <form action="param/savaAccount" method="post"> 姓名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> 金额:<input type="text" name="money"> 姓名:<input type="text" name="user.uname"> 年龄:<input type="text" name="user.age"> <input type="submit" value="提交"> </form> </body>
public class Account implements Serializable { private String username; private String password; private Double money; private User user;
public class User implements Serializable { private String uname; private Integer age;
@RequestMapping("/savaAccount") public String savaAccount(Account account){ System.out.println("zhixingle....."); System.out.println(account); return "success"; } (3)案例2
public class Account implements Serializable { private String username; private String password; private Double money; private List<User> list; private Map<String,User> map;
<form action="param/savaAccount" method="post"> 姓名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> 金额:<input type="text" name="money"> 姓名:<input type="text" name="list[0].uname"> 年龄:<input type="text" name="list[0].age"> 姓名:<input type="text" name="map['one'].uname"> 年龄:<input type="text" name="map['two'].age"> <input type="submit" value="提交"> </form>
(4)解决中文乱码
使用过滤器技术