javaBean与map类型相互转换
2023-09-27 14:20:05 时间
/** * 把Map键值对转化为javaBean对象 * * @param type * @param map * @return * @throws Exception */ private Object transforMapToObject(Class<? extends Object> type, Map<String, String> map) throws Exception { BeanInfo beanInfo = Introspector.getBeanInfo(type); //获取类属性 Object 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(); if (map.containsKey(propertyName)) { try { 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 * @return * @throws Exception */ private Map<String, String> transforObjectToMap(Object bean) throws Exception { Class<? extends Object> type = bean.getClass(); Map<String, String> returnMap = new HashMap<String, String>(); 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.toString()); } } } return returnMap; }
相关文章
- Scala之隐式转换
- openssl RSA密钥格式PKCS1和PKCS8相互转换
- (一)vhdl如何转换转换verilog?(人肉翻译—保姆教学版)
- fastjson排序 Map多层嵌套转换自动排序问题终极解决方案
- java将字段映射成另一个字段,关于 接口传参 字段不对应转换
- java将doc文件转换为pdf文件的三种方法
- List<String>和String相互转换
- JSONObject,JSONArray,Map,String之间转换
- Map和Bean的相互转换
- jenkins转换显示语言为中文简体(jenkins汉化)
- 使用ffmpeg转换文件格式,及ffmpeg参数说明
- 论文翻译——Rapid 2D-to-3D conversion——快速2D到3D转换
- 统计数据转换
- C语言 字符串和数字转换函数
- list,set,map,数组间的相互转换
- android 路径地址与Uri的相互转换 uri转string
- hive&presto日期与字符串转换
- char数组与string转换
- C# 对象数据转换Json帮助类 JsonHelp
- 通过反射将一个java对象的属性值转换为一个Map
- JavaBean和Map转换封装类