getParameterMap()和popluate()

request.getParameterMap和BeanUtils.popluate小细节

在写JavaWeb项目过程中,后台查询数据库返回数据一直为null,开始一直以为是JDBC和dao层的问题。

后面查了一下getParameterMap()和popluate()的用法,getParameterMap()是根据表单中name值获取value值,然后封装成map;BeanUtils.popluate()是获取map的键,如果Bean有对应map键的属性,就把键对应的值赋给Bean。

我在表单中name值是username,Bean属性中是name,popluate方法不能把username和name对应,所以前端表单中的值无法传到后端。于是查询报错。

  Map<String, String[]> map = request.getParameterMap();
            Student student = new Student();
            try {
                BeanUtils.populate(student, map);
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            } catch (InvocationTargetException e) {
                e.printStackTrace();
            }

切记表单中name的值要和Bean属性名相同!
切记表单中name的值要和Bean属性名相同!
切记表单中name的值要和Bean属性名相同!

记录一下错误,加深印象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值