importjava.util.ArrayList;importjava.util.HashMap;importjava.util.Iterator;importjava.util.List;importjava.util.Map;importorg.apache.commons.beanutils.ConvertUtils;importorg.apache.commons.beanutils.PropertyUtils;public classEntityBean {/*** 此方法实现JDBCTemplate

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

* 封装功能

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

* 对象,obj为一个javaBean

*@paramlistMap集合

*@paramobjjavaBean对象

*@return

*/

publicList parse(List list,Class obj){//生成集合

ArrayList ary = newArrayList();//遍历集合中的所有数据

for(int i = 0; i

Object o = this.addProperty( (Map)list.get(i),obj.newInstance() );//把对象加入到集合中

ary.add(o);

}catch(InstantiationException e) {//TODO Auto-generated catch block

e.printStackTrace();

}catch(IllegalAccessException e) {//TODO Auto-generated catch block

e.printStackTrace();

}

}//返回封装好的集合

returnlist;

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

调用方法

addProperty(map,user);

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

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

*常有用

*@parammap存储着名称和值集合

*@paramobj要封装的对象

* @return封装好的对象*/

publicObject 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();

}

}returnobj;

}

}//使用方法

List stuGroupList2=newArrayList();

EntityBean entbean=newEntityBean();for(DynaBean stubean : stuGroupList) {if (stubean.get("GROUP_ID") != null&& stubean.get("GROUP_ID").equals(group_id)) {

LinkedHashMap map=newLinkedHashMap();

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);

java list转成map对象_将List集合中的map对象转为List对象形式--封装类相关推荐

  1. java数组转换成单链表_【转】单向链表(单链表)的Java实现

    最近被问到链表,是一个朋友和我讨论Java的时候说的.说实话,我学习编程的近一年时间里,学到的东西还是挺少的.语言是学了Java和C#,关 于Web的学了一点Html+css+javascript.因 ...

  2. java文件打包成jar文件_将java文件打包成jar包步骤

    将mypackage包中的FrameDemo.java文件打包成可执行成jar包 步骤1:先将程序中所有类打包成一个包 编译mypackage包FrameDemo.java文件,将类文件存入D盘Jar ...

  3. java程序编译成exe文件_将java程序编译成独立运行的exe文件

    将java程序编译成独立运行的exe文件 众所周知java的程序可以"一次编译,到处运行",这个特性不错,但是实现这个特性的前提是当前的平台 必须有相应的jvm,而且如果当前平台的 ...

  4. python iterable对象_如何理解Python中的iterable对象

    转载请注明出处:https://www.jianshu.com/u/5e6f798c903a [^*] 表示注脚,在文末可以查看对应连接,但简书不支持该语法. 首先,容器和 iterable 间没有必 ...

  5. python数据符号函数等一切皆对象_第一章:Python高级编程-Python一切皆对象

    第一章:Python高级编程-Python一切皆对象 Python3高级核心技术97讲 笔记 1. Python一切皆对象 1.1 函数和类也是对象,属于Python的一等公民 "" ...

  6. java 循环list 对象_java计算list集合中重复对象的次数及for循环内外创建对象

    我的需求:计算字符串集合中"数值"出现的次数,然后在for循环中计算"数值"及出现的次数 解决方案: 1.使用collections类中的frequency(集 ...

  7. mysql 字符大对象_第02期:MySQL 数据类型的艺术 - 大对象字段

    我以前分享过一篇<MySQL 大对象一例>,今天就来详细说下大对象的优缺点以及使用场景. 我们把 MySQL 的大对象类型分 TEXT/BLOB 和 JSON 两部分来说明. 一.TEXT ...

  8. python用map提取一个数的个十百位数_如何使用python中的map函数?

    我们在使用python过程中,为了避免错误删除,会选择做好一个序列后可以插入另外的序列中做为新序列的一部分内容.方便完成一些复杂的工程或多个片段分别编辑后再串成一个完整工程的操作.之前小编向大家介绍了 ...

  9. bam文件读取_把bam文件读入R,并且转为grange对象

    把bam文件读入R,并且转为grange对象 假如你的Windows电脑有个bam文件,不想传输到linux服务器去使用samtools等命令行工具来探索它,就可以使用R语言! 有成熟的R包可以把ba ...

最新文章

  1. vue 网络请求 axios vue POST请求 vue GET请求 代码示例
  2. 视觉稿与H5页面之间的终端适配
  3. debian安装oracle jdk
  4. 服务器中加速BIOS启动的方法
  5. 用loader.loadbytes直接load bitmapdata.getpixels产生的bytearray
  6. c语言%f小数位第六位是错的,c语言中输出浮点型数据,如果不指定输出位数,%f输出几位小数?...
  7. 2019ICPC(南昌) - Fire-Fighting Hero(最短路+思维)
  8. [mybatis]Mapper XML Files_CUD
  9. 高项论文(质量管理2)
  10. Facebook正式改名Meta,一个元宇宙新纪元由此开始
  11. python计算时差
  12. php中的,理解php中的print EOT
  13. 遍历vad二叉树来遍历进程里的模块
  14. ubuntu安装git失败解决办法
  15. 每天进步一点之灵魂拷问14之网络连接2
  16. 赛扬处理器_英特尔发布11代奔腾、赛扬处理器 均支持AVX指令集
  17. R - Simpsons’ Hidden Talents
  18. java计算机毕业设计居家养老系统源码+mysql数据库+系统+lw文档+部署
  19. Linux-tar文件打包与压缩
  20. 8.在python中用data_only=True设置显示excel表格中公式的结果为None的解决方法

热门文章

  1. 梅卡曼德机器人| 机器视觉算法、深度学习算法、软件开发等海量岗位
  2. js调用天地图api
  3. Ubuntu下Astro Pro配置openni踩坑小记
  4. Sci. Adv. | 新算法识别治疗肺动脉高压的候选抗癌药物
  5. BenevolentAI | 基于知识图谱发现的COVID-19潜在治疗药物进入临床试验
  6. 第十课.简单文本分类
  7. linux空间共享Windows
  8. kafka原理_Kafka动态配置实现原理解析
  9. EZBioCloud:16S和原核基因组物种注释和新种鉴定
  10. 刘永鑫:20分钟讲解微生物组数据分析与可视化实战