使用BeanUtils封装
使用request对象来获取请求参数,但是,如果参数过多,我们就需要将数据封装到对象。
以前封装数据的时候,实体类有多少个字段,我们就需要手动编码调用多少次setXXX方法
BeanUtils是Apache Commons组件的成员之一,主要用于简化JavaBean封装数据的操作
使用步骤:
- 导入jar
- 使用BeanUtils.populate(user,map)
<form action="Demo1" method="get">
用户名:<input type="text" name="username"><br/>
密码:<input type="password" name="password"><br/>
爱好:<input type="checkbox" name="hobby" value="football">足球
<input type="checkbox" name="hobby" value="basketball">篮球
<input type="checkbox" name="hobby" value="film">电影
<input type="submit">
</form>
User u=new User();
//把map集合中的数据封装到user对象中
BeanUtils.populate(u,request.getParameterMap());
//使用BeanUtils封装到user对象【1.如果是多个值的情况,还是需要自己封装的 2.map的key必须和javaBean属性一致】
String[] hobbies = request.getParameterValues("hobby");
String str = Arrays.toString(hobbies);
String substring = str.substring(1, str.length() - 1)
u.setHobby(substring);
//BeanUtils.setProperty(u,"hobby",substring);
System.out.println(u);
运行结果:
User{username='e', password='e', hobby='football, basketball, film'}