JavaBean对象与Map对象互相转换
来源:互联网 发布:java 众筹 开源 编辑:程序博客网 时间:2024/05/04 05:58
/** * 把map转换成对象 * @param type 被转换的对象类型 * @param map map * @return obj 返回对象 */public static Object convertMap(Class type, Map map) {BeanInfo beanInfo;Object obj = null;try {beanInfo = Introspector.getBeanInfo(type);// 获取类属性obj = type.newInstance(); // 创建 JavaBean 对象// 给 JavaBean 对象的属性赋值PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();for (int i = 0; i < propertyDescriptors.length; i++) {PropertyDescriptor descriptor = propertyDescriptors[i];String propertyName = descriptor.getName().toUpperCase();if (map.containsKey(propertyName)) {Object value = map.get(propertyName);Object[] args = new Object[1];args[0] = value;descriptor.getWriteMethod().invoke(obj, args);}}} catch (Exception e) {e.printStackTrace();}return obj;}
/** * 将一个 JavaBean 对象转化为一个 Map * @param bean 要转化的JavaBean 对象 * @return 转化出来的 Map 对象 * @throws IntrospectionException 如果分析类属性失败 * @throws IllegalAccessException 如果实例化 JavaBean 失败 * @throws InvocationTargetException 如果调用属性的 setter 方法失败 */ public static Map convertBean(Object bean) throws IntrospectionException, IllegalAccessException, InvocationTargetException { Class type = bean.getClass(); Map returnMap = new HashMap(); BeanInfo beanInfo = Introspector.getBeanInfo(type); PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); for (int i = 0; i< propertyDescriptors.length; i++) { PropertyDescriptor descriptor = propertyDescriptors[i]; String propertyName = descriptor.getName(); if (!propertyName.equals("class")) { Method readMethod = descriptor.getReadMethod(); Object result = readMethod.invoke(bean, new Object[0]); if (result != null) { returnMap.put(propertyName, result); } else { returnMap.put(propertyName, ""); } } } return returnMap; }
0 0
- JavaBean对象与Map对象互相转换
- JavaBean对象与Map对象互相转换
- JavaBean对象与Map对象互相转化
- JavaBean对象与Map对象互相转化
- JavaBean对象与Map对象互相转化
- JavaBean对象与Map对象互相转化
- map与对象互相转换
- javabean/List<javabean>与map/List<map>互相转换
- javaBean对象与Map对象互转
- Jquery 与对象 dom 对象互相转换
- jQuery对象与js对象互相转换
- 将javabean对象转换成Map<String,Object>类型对象
- JavaBean 对象与 Map的纠纷
- JavaBean对象转map
- json与Bean对象互相转换
- json字符串与java对象互相转换
- C# 对象与JSON串互相转换
- Json字符串与Java对象互相转换
- 计算机视觉算法源码
- JSP中文乱码的相关解决方案
- .NET的委托和匿名函数应用一例
- How-to: make spark streaming collect data from Kafka topics and store data into hdfs
- servlet 过滤器
- JavaBean对象与Map对象互相转换
- 探秘Java虚拟机——内存管理与垃圾回收
- windows ntp 服务器
- Runtime监控项目内存使用情况
- 七牛界面化工具
- stm8s中UART的用法(四种UART中断)
- linux下日期表示法~
- HTMl5的sessionStorage和localStorage
- 【swift_2】swift之三大控件 UILabel、UITextField、UIButton 的使用