BeanUtils.populate()方法的使用;

导包
beanutils.jar
commons-logging.jar

方法的作用:用来将一些 key-value 的值(例如 hashmap)映射到 bean 中的属性。

BeanUtils:
控制层在接收大量参数的时候,如果一个一个区获取,比较繁琐,而且传值得时候,由于参数比较多,编写不方便。此时,我们可以通过Beanutils这个工具。这个工具,就可以直接把一个map集合里面的数据,自动封装到一个实体对象里面去。在封装过程当中,工具实际上是调用对象的set方法进行的赋值,而且还进行了类型的自动转换。

servlet中有这样的使用:

        Map<String, String[]> map=request.getParameterMap(); //接受注册form表单数据

//封装数据

User user=new User();//注册用户类

//把前台传过来的数据封装进JavaBean

BeanUtils.populate(user, map);

        int i=userService.regist(user);

if(i==1){

request.setAttribute(“msg”, “注册成功”);

request.getRequestDispatcher("/msg").forward(request, response);

}else {

request.setAttribute(“msg”, “注册失败”);

request.getRequestDispatcher("/msg").forward(request, response);

}

userService 类:
package service;

import java.sql.SQLException;

import dao.userDao;
import domain.User;

public class userService {

public static int regist(User user) throws SQLException {

userDao dao=new userDao();

return dao.addUser(user);
}

}

userDao 类:addUser方法

public int addUser(User user) throws SQLException {

QueryRunner qRunner=new QueryRunner(DataSourceUtils.getDataSource());

String sql = “insert into user(username,password,addr,tel)values(?,?,?,?)”;

return qRunner.update(sql,
user.getUsername(),user.getPassword(),user.getAddr(),user.getTle());

}

猜你喜欢

转载自blog.csdn.net/qq_42896477/article/details/85221779