JavaBean
public class Person2 {
private String name;
private boolean gender;
private String homeAddress;
private List<String> contentslist;
private String[] taxs;


@Override
public String toString() {
return ToStringBuilder.reflectionToString(
this);

}


}
测试类 解析xml 反序列化到javaBean object
public class TestXmlToObject2 {

public static final XStream xstream=
new XStream();
static{

xstream.alias("person", Person2.
class);
//类别名

xstream.aliasField("address", Person2.
class, "homeAddress");
//属性别名

xstream.alias("contents",String.
class);
//private List<String> contentslist;是string类型

xstream.addImplicitCollection(Person2.
class, "contentslist");
//隐式集合 隐藏contentslist

Person2 person=(Person2)xstream.fromXML(TestXmlToObject2.
class.getClassLoader().getResourceAsStream("person02.xml"));

System.out.println(person.toString());

}
public static void main(String[] args) {


}


}
二: 注解方式xml: javaBean
@XStreamAlias("person")

public class Person3 {

private String name;

private boolean gender;

@XStreamAlias("address")

private String homeAddress;

private String company;

@XStreamImplicit(itemFieldName="part")

private List
<String> content;

private String[] sources;

@Override

public String toString() {

return ToStringBuilder.reflectionToString(this);

}

}

测试
public class TestXmlToObject3 {

public static final XStream xstream=
new XStream();
static{

xstream.processAnnotations(Person3.
class);
//显示声明使用注解

xstream.autodetectAnnotations(
true);

Person3 person=(Person3)xstream.fromXML(TestXmlToObject3.
class.getClassLoader().getResourceAsStream("person03.xml"));

System.out.println(person.toString());

}
public static void main(String[] args) {


}


}
POM.xml