使用BeanUtils.populate封装对象时,封装对象的属性值始终为null,是哪里出现问题了?

我遇到的这种情况是由于获取到的属性名和自己定义封装的类的属性值不一致导致的。

比如:在一个html的页面中,提交的表单数据有 username 和 password 两个数据,这时候用于封装的类 的属性名 必须和要获取的用于封装的属性保持一致 也就是类中定义的属性要为 username和 password。

如果不这样做,那么使用BeanUtils.populate()封装时,里面的键值对就为null

代码示例:

html:  

 
用户名:
密    码:

用于封装的user类:


    private String username;
    private String password;

封装代码:

Map map= req.getParameterMap();//这里从表单中获取到的username和password
//要和user类中的相对应,不然的话,实现封装的时候,里面的值会出现null值
        User user = new User();

        try {
            BeanUtils.populate(user,map);
        } catch (IllegalAccessException     e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }

 

你可能感兴趣的:(使用BeanUtils.populate封装对象时,封装对象的属性值始终为null,是哪里出现问题了?)