工具代码:
package com.what21.bean2xml;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import cn.hopegroup.util.builder.Builder;
import com.thoughtworks.xstream.XStream;
public class Bean2Xml {
/**
* @param bean
* @return
*/
private static Map toMap(Object bean){
if(bean==null){
return null;
}
Map clazzMap = new HashMap();
Set fieldSet = Builder.field2Set(bean.getClass(), "ALL");
for(String name : fieldSet){
try {
clazzMap.put(name, bean.getClass().getField(name).getType());
} catch (Exception e) {
}
}
return clazzMap;
}
/**
* bean转换成xml
*
* @param bean
* @return
*/
public static String to(Object bean) {
if(bean==null){
return null;
}
Map classMap = toMap(bean);
Set nameSet = classMap.keySet();
XStream xstream = new XStream();
for (String key : nameSet) {
Class value = classMap.get(key);
xstream.alias(key, value);
}
String xml = xstream.toXML(bean);
return xml;
}
}
案例代码:
package com.what21.bean2xml;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import cn.hopegroup.util.builder.Builder;
import com.thoughtworks.xstream.XStream;
public class Bean2Xml {
/**
* @param bean
* @return
*/
private static Map toMap(Object bean){
if(bean==null){
return null;
}
Map clazzMap = new HashMap();
Set fieldSet = Builder.field2Set(bean.getClass(), "ALL");
for(String name : fieldSet){
try {
clazzMap.put(name, bean.getClass().getField(name).getType());
} catch (Exception e) {
}
}
return clazzMap;
}
/**
* bean转换成xml
*
* @param bean
* @return
*/
public static String to(Object bean) {
if(bean==null){
return null;
}
Map classMap = toMap(bean);
Set nameSet = classMap.keySet();
XStream xstream = new XStream();
for (String key : nameSet) {
Class value = classMap.get(key);
xstream.alias(key, value);
}
String xml = xstream.toXML(bean);
return xml;
}
}