java对象和Map互转及测试

来源:互联网 发布:加入网络作协要求 编辑:程序博客网 时间:2024/05/22 06:37

java对象和Map互转及测试

测试

package com.test.java;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import java.util.Set;/** * java对象和Map之间的互相转换 * */public class PojoToMap {public static void main(String[] args) throws Exception {//beanutilMmapToPojo();beanutilPojoToMap();}/** * 转换测试函数(MapToObject) * @throws Exception */public static void beanutilMmapToPojo() throws Exception{Map<String,Object> map = new HashMap<String, Object>();List<String> interests = new ArrayList<String>();interests.add("足球");interests.add("篮球");map.put("age", 25);map.put("name", "张国荣");map.put("sex", "男");map.put("interests", interests);Person p = (Person) MapAndPojoChang.mapToObject(map, Person.class);for(String interest:p.getInterests()){System.out.println(interest);}}/** * 转换测试函数(ObjectToMap) */public static void beanutilPojoToMap() throws Exception{Person person = new Person();person.setAge(25);person.setName("张国荣");person.setSex("男");List<String> interests = new ArrayList<String>();interests.add("足球");interests.add("篮球");person.setInterests(interests);@SuppressWarnings("unchecked")Map<String,Object> map = (Map<String, Object>) MapAndPojoChang.objectToMap(person);if(!map.isEmpty()){Set<Entry<String, Object>> entrySet = map.entrySet();Iterator<Entry<String, Object>> iterator = entrySet.iterator();for(int i = 0;i<entrySet.size();i++){if(iterator.hasNext()){Entry<String, Object> next = iterator.next();if(next.getKey().equals("class")){continue;}else{System.out.println(next.getValue());}}}}}}class MapAndPojoChang {            public static Object mapToObject(Map<String, Object> map, Class<?> beanClass) throws Exception {              if (map == null)                return null;                Object obj = beanClass.newInstance();                org.apache.commons.beanutils.BeanUtils.populate(obj, map);                return obj;        }                  public static Map<?, ?> objectToMap(Object obj) {            if(obj == null)                return null;                 return new org.apache.commons.beanutils.BeanMap(obj);        }              }

实体类

package com.test.java;import java.util.List;public class Person {private int age;private String name;private String sex;private List<String> interests;public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public List<String> getInterests() {return interests;}public void setInterests(List<String> interests) {this.interests = interests;}}


原创粉丝点击