JavaBean與XML互相轉換-工具類
工具類
package cn.hlbdx;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
public class XStreamUtil {
/**
* 将bean轉為xml
*
* @param obj
* @return
*/
public static String ObjectToXML(Object obj) {
XStream xStream = new XStream();
// xstream使用注解轉換
xStream.processAnnotations(obj.getClass());
return xStream.toXML(obj);
}
/**
* 将xml轉換為bean
*
* @param xml
* @param clazz
* @return
*/
@SuppressWarnings("unchecked")
public static <T> T xmlToObject(String xml, Class<T> clazz) {
XStream xStream = new XStream(new DomDriver());
xStream.processAnnotations(clazz);
return (T) xStream.fromXML(xml);
}
}
JavaBean
package cn.hlbdx;
import java.util.Date;
import com.thoughtworks.xstream.annotations.XStreamAlias;
@XStreamAlias("Person")
public class Person {
@XStreamAlias("id")
private String id;
@XStreamAlias("name")
private String name;
@XStreamAlias("sex")
private int sex;
@XStreamAlias("birthday")
private Date birthday;
@XStreamAlias("isGo")
private boolean isGo;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSex() {
return sex;
}
public void setSex(int sex) {
this.sex = sex;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public boolean isGo() {
return isGo;
}
public void setGo(boolean isGo) {
this.isGo = isGo;
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + ", sex=" + sex
+ ", birthday=" + birthday + ", isGo=" + isGo + "]";
}
}
使用jar
JavaBean與XML互相轉換-工具類 JavaBean與XML互相轉換-工具類