读书人

XStream解析XML文档范例

发布时间: 2012-08-24 10:00:20 作者: rapoo

XStream解析XML文档实例
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>jack@hotmail.com</mail>

<age>22</age>

</user>

<users>

<user>

<name> allen </name>

<mail> allen@163.com </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

读书人网 >XML SOAP

热点推荐