java 实体对象转Map公共类
package org.kxtkx.portal.utils;
</span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.lang.reflect.Field;
</span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.util.HashMap;
</span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.util.Map;
</span><span style="color: #0000ff;">import</span><span style="color: #000000;"> org.kxtkx.portal.user.Admin;
</span><span style="color: #008000;">/**</span><span style="color: #008000;">
*
* </span><span style="color: #808080;">@author</span><span style="color: #008000;"> <a href="mailto:wangc@kxtkx.com">王成</a>
* @created in 2011-6-24 - 下午02:58:50
* 本类说明:对象转Map
</span><span style="color: #008000;">*/</span>
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> ObjAnalysis {
</span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span><span style="color: #000000;"> Map ConvertObjToMap(Object obj){
Map</span><String,Object> reMap = <span style="color: #0000ff;">new</span> HashMap<String,Object><span style="color: #000000;">();
</span><span style="color: #0000ff;">if</span> (obj == <span style="color: #0000ff;">null</span><span style="color: #000000;">)
</span><span style="color: #0000ff;">return</span> <span style="color: #0000ff;">null</span><span style="color: #000000;">;
Field[] fields </span>=<span style="color: #000000;"> obj.getClass().getDeclaredFields();
</span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
</span><span style="color: #0000ff;">for</span>(<span style="color: #0000ff;">int</span> i=0;i<fields.length;i++<span style="color: #000000;">){
</span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
Field f </span>=<span style="color: #000000;"> obj.getClass().getDeclaredField(fields[i].getName());
f.setAccessible(</span><span style="color: #0000ff;">true</span><span style="color: #000000;">);
Object o </span>=<span style="color: #000000;"> f.get(obj);
reMap.put(fields[i].getName(), o);
} </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (NoSuchFieldException e) {
</span><span style="color: #008000;">//</span><span style="color: #008000;"> TODO Auto-generated catch block</span>
<span style="color: #000000;"> e.printStackTrace();
} </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (IllegalArgumentException e) {
</span><span style="color: #008000;">//</span><span style="color: #008000;"> TODO Auto-generated catch block</span>
<span style="color: #000000;"> e.printStackTrace();
} </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (IllegalAccessException e) {
</span><span style="color: #008000;">//</span><span style="color: #008000;"> TODO Auto-generated catch block</span>
<span style="color: #000000;"> e.printStackTrace();
}
}
} </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SecurityException e) {
</span><span style="color: #008000;">//</span><span style="color: #008000;"> TODO Auto-generated catch block</span>
<span style="color: #000000;"> e.printStackTrace();
}
</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> reMap;
}
</span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> main(String[] args) {
Admin a </span>= <span style="color: #0000ff;">new</span><span style="color: #000000;"> Admin();
a.setCPassword(</span>"123456"<span style="color: #000000;">);
a.setCUsername(</span>"王成"<span style="color: #000000;">);
Map m </span>=<span style="color: #000000;"> ConvertObjToMap(a);
System.out.println(m);
}
}</span>