package com.meeting.utils;

import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.HashMap;
import java.util.Map;

/**
*
* @ClassName: MapAndBeanUtil
* @Description: map和bean的互相转换
* @author cheng
* @date
public class MapAndBeanUtil
/**
*
* @Title: mapToBean
* @Description: map转bean对象
* @param map
* @param beanClass
* @return
* @throws
public static <T> T mapToBean(Map<String, Object> map, Class<T> beanClass)
throws Exception {
if (map == null)
return null;
T bean = beanClass.newInstance();
Field[] fields = bean.getClass().getDeclaredFields();
for (Field field : fields) {
int mod = field.getModifiers();
if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
continue;
}
field.setAccessible(true);
field.set(bean, map.get(field.getName()));
}
return bean;
}

/**
*
* @Title: beanToMap
* @Description: bean对象转map
* @param bean
* @return
* @throws
public static Map<String, Object> beanToMap(Object bean) throws Exception {
if (bean == null) {
return null;
}
Map<String, Object> map = new HashMap<String, Object>();
Field[] declaredFields = bean.getClass().getDeclaredFields();
for (Field field : declaredFields) {
field.setAccessible(true);
map.put(field.getName(), field.get(bean));
}
return