xstream 别名的用法<转>

1.xstream的alias使用方法:

       1.1 作用:将序列化中的类全量名称,用别名替换。

       1.2  使用方法:xstream.alias("blog", Blog.class);

       1.3  示例:

            要序列化的类:

package test.xstream.test;

public class Author {

    private String name;
    public Author(String name) {
            this.name = name;
    }
    public String getName() {
            return name;
    }
}

        不使用别名alias时序列化出来的xml:

<test.xstream.test.Author>
  <name>name</name>
</test.xstream.test.Author>

使用别名alias时序列化出来的xml:

<Author>
  <name>name</name>
</Author>

2.xstream的aliasField

     2.1 作用:使用别名替代属性名
     2.2 使用方法:xstream.aliasField("author", Author.class, "name");

    2.3 示例:

不使用别名aliasField时序列化出来的xml:

<Author>
  <name>name</name>
</Author>

使用别名aliasField时序列化出来的xml:

<Author>
  <author>name</author>
</Author>

    3. xstream的useAttributeFor    

3.1 作用:将某一个类的属性,作为xml头信息的属性,而不是子节点    

3.2 使用方法:xstream.useAttributeFor(Author.class, "name");   

3.3  示例: 不使用别名useAttributeFor时序列化出来的xml:

<Author> <author>name</author> </Author>

使用别名useAttributeFor时序列化出来的xml:

<Author name="name"/>

    ps: 使用方法

    public static void main(String[] args) {
        XStream xstream = new XStream();
        xstream.alias("Author", Author.class);
//        xstream.aliasField("author", Author.class, "name");
        xstream.useAttributeFor(Author.class, "name");
        Author author =new Author("name");
        String xmlString =xstream.toXML(author);
        System.out.println(xmlString);
    }

几个相关网址:http://xstream.codehaus.org/alias-tutorial.html

http://blog.csdn.net/faye0412/article/details/6602144

 

原文链接:http://blog.csdn.net/subuser/article/details/21548227

posted @ 2015-04-19 16:16  huazhiliange  阅读(994)  评论(0编辑  收藏  举报