XStream是thoughtworks公司发布的一个简单的Java类库,用于将JavaBean序列化为XML,并且能够将XML文件反向转换为JavaBean.
实例:
user.java
- importjava.io.Serializable;
- publicclassUserimplementsSerializable{
-
- privateStringid;
- privateStringname;
- privateStringage;
- publicUser(){
-
- }
- publicUser(Stringid,Stringname,Stringage){
- this.id=id;
- this.name=name;
- this.age=age;
- }
- publicStringgetId(){
- returnid;
- voidsetId(Stringid){
- publicStringgetName(){
- returnname;
- voidsetName(Stringname){
- this.name=name;
- publicStringgetAge(){
- returnage;
- voidsetAge(Stringage){
- }
BaseBean.java
importjava.util.ArrayList;
- importjava.util.List;
- classBaseBean{
- privateList<User>userList;
- publicBaseBean(){
- userList=newArrayList<User>();
- publicList<User>getUserList(){
- returnuserList;
- voidsetUserList(List<User>userList){
- this.userList=userList;
- voidaddUser(Useruser){
- userList.add(user);
-
xstream代码
classXStreamTest{
- staticvoidmain(String[]args){
-
- List<User>users=newArrayList<User>();
- users.add(newUser("123","爱边程","23"));
- users.add(newUser("456","刘大拿","24"));
- BaseBeanbase=newBaseBean();
- base.setUserList(users);
- XStreamxs=newXStream();
- xs.alias("root",BaseBean.class);
- xs.alias("user",User.class);
- xs.aliasField("list",153); font-weight:bold; background-color:inherit">class,"userList");
- Stringxml=xs.toXML(base);
- System.out.println("javabean转成xml为:n"+xml);
-
- XStreamxs1=newXStream(newDomDriver());
- xs1.alias("root",153); font-weight:bold; background-color:inherit">class);//注意此处要把原要转换的bean类定义别名为根节点的名字,如上面的xml的根节点为<root>
- xs1.alias("user",153); font-weight:bold; background-color:inherit">class); //此处与上面相同
- xs1.aliasField("list",108); list-style:decimal-leading-zero outside; color:inherit; line-height:18px; margin:0px!important; padding:0px 3px 0px 10px!important"> base=(BaseBean)xs1.fromXML(xml);
- users=base.getUserList();
- System.out.println("xml转成javabean为:");
- for(Useru:users){
- System.out.println("id="+u.getId()+",name="+u.getName()+",age="+u.getAge());
- }
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|