XStream解析XML非常简单。它不需要自己写配置文件来描述XML节点中对应的调用方法。在使用 XStream 之前首先到 http://xstream.codehaus.org 下载 XStream 的最新版本,然后把 XSteam***.jar 和 xpp3-***.jar 导入到 ClassPath 下,然后就可以使用了。
下面是一个简单实例,比如有个这样的XML文件:
用XStream实现该文件的解析很简单,首先,编写一个userprofile类,如下:
public class UserProfile{
private List users=new ArrayList();
public void setUsers(List users){
this.users=users;
}
public List getUsers(){
return users;
}
public void addUser(User user){
users.add(user);
}
}
<userprofile>
<users>
<user>
<name>jack</name>
<mail>
[email protected]</mail>
<age>22</age>
</user>
<users>
<user>
<name> allen </name>
<mail>
[email protected] </mail>
<age>21</age>
</user>
</userprofile>
再写一个User类:
public class User{
private String name;
private String mail;
private int age;
// ------ Get & Set
}
解析这个XML文件的测试类如下:
public class XStreamTest {
public static void main(String[] args) throws FileNotFoundException {
XStream stream = new XStream(new DomDriver());
stream.alias("userprofile", UserProfile.class);
stream.alias("user", User.class);
UserProfile profile = (UserProfile) stream.fromXML(new FileReader(
"profile.xml"));
List users = profile.getUsers();
for (int i = 0; i < users.size(); ++i) {
User user = (User) users.get(i);
System.out.println(user.getName());
System.out.println(user.getAge());
}
}
}
很简单吧。使用POJO类生成XML文件也同样很简单。
更多详细的信息请参见: http://xstream.codehaus.org