您好,欢迎访问一九零五行业门户网

javaBean与map类型相互转换

/** * 把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; }
其它类似信息

推荐信息