使用BeanUtils.populate将map集合封装为bean对象

1.前言



最近在做一个javaweb项目练练手,涉及到把jsp页面中表单的内容存到数据库,和request.getParameterMap配合使用可以将jsp页面表单的数据转化为bean对象。

2.介绍



BeanUtils位于org.apache.commons.beanutils.BeanUtils下面,其方法populate的作用解释如下:

完整方法:

BeanUtils.populate( Object bean, Map properties ),

这个方法会遍历map<key, value>中的key,如果bean中有这个属性,就把这个key对应的value值赋给bean的属性。

3.使用



在获取jsp页面中表单数据的时候,刚好可以使用request.getParameterMap得到表单数据的map集合

Map<String, String[]> map = request.getParameterMap();

配合BeanUtils.populate使用,将map集合转化为bean对象

BeanUtils.populate(user,map);

原文地址:https://www.cnblogs.com/Alitac/p/12299890.html

时间: 2024-10-24 07:37:35

使用BeanUtils.populate将map集合封装为bean对象的相关文章

JAVA-初步认识-常用对象API(集合框架-Map集合-hashmap存储自定义对象)

一. 把前面讲到的三个集合使用一下. 交代一下需求,学生是键,归属地是值.到底归属地是不是String,有待商榷.如果归属地比较简单,用天津,上海....这些就是字符串.如果归属地比较复杂,北京的海淀的...,建议把归属地封装成对象.为什么?归属地封装成对象以后,它里面包含着省字段,市字段,区字段.....这些字段你想单独地去获取,归属地对象自己最清楚,所以这个时候要进行封装.记住,一旦事物变复杂了,封装对象.将复杂事物简单化.如果就是简答的,那就直接字符串上,不用封装对象. 在第一个例子中,演

java集合练习:创建Map集合,创建Emp对象,并将创建的Emp对象添加到集合中

package com.jihe; public class Emp { private String e_id; private String e_name; public Emp(String e_id, String e_name) { super(); this.e_id = e_id; this.e_name = e_name; } public String getE_id() { return e_id; } public void setE_id(String e_id) { t

1.22 P235第三题创建Map集合,创建Emp对象,将Emp对象添加到集合中,并将id为005的对象从集合中移除。

1 public static void main(String[] args) { 2 3 HashMap<String,String> map = new HashMap<String,String>(); //创建集合map 4 5 Emp e1 = new Emp("001","星期一"); 6 Emp e2 = new Emp("002","星期二"); 7 Emp e3 = new Emp(

BeanUtils --- 封装属性到对象中

1.注意需要两个jar包: commons-beanutils-1.8.3.jar  和 commons-logging-1.1.3.jar public class Admin {//省略getset等通用方法 private int id; private String username; private String pwd; private Date date; } public class APP { @Test public void testBeanUtils() throws E

java集合(List集合与Map集合的数据转换)

List集合与Map集合的数据转换 实现List和Map数据的转换. 具体要求如下: 功能1:定义方法public void listToMap( ){ }将List中Student元素封装到Map中 1)使用构造方法Student(int id,String name,int age,String sex )创建多个学生信息并加入List 2) 遍历List,输出每个Student信息 3) 将List中数据放入Map,使用Student的id属性作为key,使用Student对象信息作为va

Map集合的遍历

Map是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.当发生重复添加的话,后面的值将前面的覆盖,适用于put()和putAll()两个方法. Map集合常用的两种遍历方式: 1.通过Key来查找对应的Value 2.通过键值对的Set集合来遍历Map集合 public class Person { //姓名 private String name; //年龄 private int age; //无参构造 public Person() { } //有参构造 publ

14.5 Map集合

1.概述 Map集合没有继承Collection接口,其提供的 key到value的映射.Map中不能包含相同的key,每个key只能映射到一个value.key还决定了存储对象在映射中的存储位置,但不是由key对象本身决定的,而是通过一种"散列技术"进行处理,产生一个散列码的整数值.散列码通常用做一个偏移量,该偏移量对应分配给映射的内存区域的起始位置,从而确定存储对象在映射中的存储位置.Map集合包括Map接口以及Map接口的所有实现类. 2.Map接口 a.Map集合中允许值对象是

利用反射自动封装成实体对象

利用此方法的时候需要传递的参数的名称,必须以行号结尾,去掉行号就是属性名称,比如页面传递name+rowNo,那么实体对象的属性名应该为name.代码如下 //获取页面数据,自动封装成bean对象 public List getObjectList(Class clazz,String[] rowNos) throws Exception{ List objList = new ArrayList(); for(int i=0;rowNos!=null && i<rowNos.len

使用JDBC获取数据库中的一条记录并封装为Bean

比如我数据库中存入的是一条一条的用户信息,现在想取出一个人的个人信息,并封装为Bean对象,可以使用queryForObject来获取数据并通过new BeanPropertyRowMapper(Bean.class)将数据转化为javaBean对象. 用法: queryForObject:查询并返回对象 new BeanPropertyRowMapper(Bean.class):是queryForObject的一个参数,将返回的对象封装为什么对象 public User findByid(in