将List集合中的map对象转为List<对象>形式实例代码

网友投稿 572 2023-02-27


将List集合中的map对象转为List<对象>形式实例代码

本文实例主要实现将List集合中的map对象转为List&lhttp://t;对象>形式,下面是完整代码:

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

import org.apache.commons.beanutils.ConvertUtils;

import org.apache.commons.beanutils.PropertyUtils;

public class EntityBean {

/**

* 此方法实现JDBCTemplate

* 返回的Map集合对数据的自动

* 封装功能

* List集合存储着一系列的MAP

* 对象,obj为一个javaBean

* @param listMap集合

* @param objjavaBean对象

* @return

*/

public List parse(List list,Class obj){

//生成集合

ArrayList ary = new ArrayList();

//遍历集合中的所有数据

for (ingUQQRt i = 0; i

try {

////生成对象实历 将MAP中的所有参数封装到对象中

Object o = this.addProperty( (Map)list.get(i),obj.newInstance() );

//把对象加入到集合中

arygUQQR.add(o);

}

catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

//返回封装好的集合

return list;

}

/**Map对象中的值为 name=aaa,value=bbb

调用方法

addProperty(map,user);

*将自动将map中的值赋给user类

*此方法结合Spring框架的jdbcTemplete将非

*常有用

* @param map存储着名称和值集合

* @param obj要封装的对象

* @return封装好的对象

*/

public Object addProperty(Map map,Object obj){

//遍历所有名称

Iterator it = map.keySet().iterator();

while(it.hasNext()){

//取得名称

String name = it.next().toString();

//取得值

String value = map.get(name).toString();

try{

//取得值的类形

Class type = PropertyUtils.getPropertyType(obj, name);

if(type!=null){

//设置参数

PropertyUtils.setProperty(obj, name,ConvertUtils.convert(value, type));

}

}

catch(Exception ex){

ex.printStackTrace();

}

}

return obj;

}

}

//使用方法

List stuGroupList2=new ArrayList();

EntityBean entbean=new EntityBean();

for (DynaBean stubean : stuGroupList) {

    if (stubean.get("GROUP_ID") != null&& stubean.get("GROUP_ID").equals(group_id)) {

        LinkedHashMap map=new LinkedHashMap();

        map.put("choose_id", stubean.get("CHOOSE_ID"));

        map.put("group_user_typecode", stubean.get("GROUP_USER_TYPECODE"));

        map.put("group_id", stubean.get("GROUP_ID"));

        map.put("realname", stubean.get("REALNAME"));

        stuGroupList2.add(map);

    

}

}

stuGroupList2=entbean.parse(stuGroupList2, stuGroup.class);

总结

以上就是本文关于将List集合中的map对象转为List<对象>形式实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

try {

////生成对象实历 将MAP中的所有参数封装到对象中

Object o = this.addProperty( (Map)list.get(i),obj.newInstance() );

//把对象加入到集合中

arygUQQR.add(o);

}

catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

//返回封装好的集合

return list;

}

/**Map对象中的值为 name=aaa,value=bbb

调用方法

addProperty(map,user);

*将自动将map中的值赋给user类

*此方法结合Spring框架的jdbcTemplete将非

*常有用

* @param map存储着名称和值集合

* @param obj要封装的对象

* @return封装好的对象

*/

public Object addProperty(Map map,Object obj){

//遍历所有名称

Iterator it = map.keySet().iterator();

while(it.hasNext()){

//取得名称

String name = it.next().toString();

//取得值

String value = map.get(name).toString();

try{

//取得值的类形

Class type = PropertyUtils.getPropertyType(obj, name);

if(type!=null){

//设置参数

PropertyUtils.setProperty(obj, name,ConvertUtils.convert(value, type));

}

}

catch(Exception ex){

ex.printStackTrace();

}

}

return obj;

}

}

//使用方法

List stuGroupList2=new ArrayList();

EntityBean entbean=new EntityBean();

for (DynaBean stubean : stuGroupList) {

    if (stubean.get("GROUP_ID") != null&& stubean.get("GROUP_ID").equals(group_id)) {

        LinkedHashMap map=new LinkedHashMap();

        map.put("choose_id", stubean.get("CHOOSE_ID"));

        map.put("group_user_typecode", stubean.get("GROUP_USER_TYPECODE"));

        map.put("group_id", stubean.get("GROUP_ID"));

        map.put("realname", stubean.get("REALNAME"));

        stuGroupList2.add(map);

    

}

}

stuGroupList2=entbean.parse(stuGroupList2, stuGroup.class);

总结

以上就是本文关于将List集合中的map对象转为List<对象>形式实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数示例代码
下一篇:spring boot测试打包部署的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~