import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
public class Util {
public static Object mapToObject(Map<String, Object> map, Class<?> beanClass){
Object obj=null;
if (map == null) {
return null;
}
try{
obj = beanClass.newInstance();
Field[] fields = obj.getClass().getDeclaredFields();
for (Field field : fields) {
int mod = field.getModifiers();
if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
continue;
}
field.setAccessible(true);
field.set(obj, map.get(field.getName()));
}
}catch(Exception ex){
ex.printStackTrace();
}
return obj;
}
public static Map<String, Object> objectToMap(Object obj){
Map<String, Object> map = new HashMap<String, Object>();
try{
if(obj == null){return null;}
Field[] declaredFields = obj.getClass().getDeclaredFields();
for (Field field : declaredFields){
field.setAccessible(true);
if(field.get(obj) instanceof String){
if(field.get(obj)!=null&&!field.get(obj).equals("")){
map.put(field.getName(), field.get(obj));
}
}else if(field.get(obj) instanceof Long){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof Integer){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof Date){
if(field.get(obj)!=null){
map.put(field.getName(), DateFormater.DateToString((Date)field.get(obj),DateFormater.TIMEF_FORMAT));
}
}else if(field.get(obj) instanceof Double){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof Float){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof BigInteger){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof Short){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else if(field.get(obj) instanceof BigInteger){
if(field.get(obj)!=null){
map.put(field.getName(), String.valueOf(field.get(obj)));
}
}else{
if(field.get(obj)!=null){
map.put(field.getName(), field.get(obj));
}
}
}
}catch(Exception ex){
ex.printStackTrace();
}
return map;
}
//测试方法
public static void mian(String[]args){
PoJoTest pojo = new PoJoTest();</span>
pojo.setId("123414");
pojo.setCreateTime(new Date());
Map params=Util.objectToMap(pojo);
System.out.println(params.get("createTime"));
}
}
</pre><pre>