XStream学习笔记

XStream

包com.thoughtworks.xstream作用:将Java对象和xml之间相互转换

几个常用注解

  • @XStreamAlias

设置别名,修改xml标签名为指定名称

例如:

标注属性

@XStreamAlias("sex")
public String gender;

生成xml标签结果

<sex></sex>
  • @XStreamImplicit

被标注的对象必须是集合或数组,直接以集合或数组元素生成xml标签

例如:

标注属性

@XStreamImplicit
public List<String> hobbies;

生成xml标签结果

<string>play game</string>
<string>vue</string>
  • @XStreamOmitField

忽略被标注字段,不用生成xml标签

例如:

标注属性

@XStreamOmitField
public Integer age;

生成xml标签结果

  • @XStreamAsAttribute

被标注字段会被作为xml根标签的属性

例如:

标注属性

@XStreamAsAttribute
public String name;

生成xml标签结果

<test name="wuy">

完整java代码:

@XStreamAlias("test")
public class Test implements Serializable{

    @XStreamAlias("id")
    public Integer id;

    @XStreamAsAttribute
    public String name;

    @XStreamOmitField
    public Integer age;

    @XStreamAlias("sex")
    public String gender;

    @XStreamImplicit
    public List<String> hobbies;

    @Override
    public String toString() {
        return "Test{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

生成xml对象示例:

<test name="wuy">
  <id>1</id>
  <sex></sex>
  <string>play game</string>
  <string>vue</string>
</test>

常用类

XStream

实例方法说明

XStream stream = new XStream(new DomDriver());
stream.autodetectAnnotations(true);  // 设置xstream标签别名生效
stream.processAnnotations(Test.class);  // test类上的注解生效
String xml = stream.toXML(test);  // 将Java对象转换为xml标签
stream.fromXML(xml);  // 将xml标签转换为Java对象  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值