美文网首页
xtream的工具使用

xtream的工具使用

作者: 怪蜀黍1212 | 来源:发表于2017-04-23 00:02 被阅读0次

Xstream

需要的jar包

xpp3_min-1.1.4c.jar

xstream-1.3.1.jar

作用:

将xml字符串转换为java对象,或者将java对象转换为xml字符串

核心类:XStream xs = new XStream();

准备工作,先创建两个java类:City和Province

@XStreamAlias("city")

public class City {

private String name;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

@XStreamAlias("province")

public class Province {

@XStreamAsAttribute()

private String name;

@XStreamImplicit(itemFieldName = "city")

private List citys;

public List getCitys() {

return citys;

}

public void setCitys(List citys) {

this.citys = citys;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

第一:将java类转换为xml字符串

XStream xs = new XStream();

String xml = xs.toXML(JavaBean);

打印的字符串会将类的包名作为xml的标签,以及里面的字段都会变成标签。

例如将City类变为xml字符串:

武汉

将Province变成xml字符串

湖北

武汉

所以为了能将打印的字符串变为我们所想要的格式,可以使用Xstream提供的注解进行格式化输出

提供便捷注解

@XStreamAlias(别名) 对类和变量设置别名

@XStreamAsAttribute  设置变量生成属性

@XStreamOmitField  设置变量 不生成到XML

@XStreamImplicit(itemFieldName = “hobbies”) 设置集合类型变量 别名

使注解生效

xStream.autodetectAnnotations(true);

第二:将xml字符串变为java对象

Object xs.fromXML(InputStream input);  //将一个下买了指定的流变为java对象

Object xs.fromXML(String xml)  //将xml字符串变为java对象

Object xs.fromXML(InputStream input,Object root)  ?

Object xs.fromXML(String xml,Object root)  ?

注意:转换的xml文档必须与Java对象  的格式对应

例如:将下面xml字符串转换为Java对象

武汉

则进行转换时候:

XStream xs = new XStream();

Object o = xs.fromXML(in);

若对应的java格式一定是:

包名为:com.domain

类名为:City

里面有一个成员属性:name  提供setter/getter方法

若不是则可以使用别名:

a.为类设置别名

xs.alias("city", City.class);

b.为属性添加别名

xstream.useAttributeFor(Blog.class,"author");

能不能通过注解将 xml转换为制定的java对象  ?

能,手动用方法添加别名

   

相关文章

  • xtream的工具使用

    Xstream 需要的jar包 xpp3_min-1.1.4c.jar xstream-1.3.1.jar 作用:...

  • Xtream Path 2 for Mac(AI路径编辑插件)

    Xtream Path 2 for Mac(AI路径编辑插件)推荐给大家!Xtream Path 2 Mac可以对...

  • Xstream反序列化漏洞

    1. Xtream实现序列化 XStream是Java类库,可以将对象序列化为XML格式或将XML反序列化为对象。...

  • 【工具使用】Reveal工具的使用介绍

    写在前面 有时候我们可能想要分析其他APP的一些整体View结构,就像在Xcode分析我们自己的APP一样能够清楚...

  • 工具的使用

    原创文章转载请注明出处 0x0 keychain-dumper 终端输入命令克隆到本地:git clone htt...

  • 工具的使用

    工欲善其事必先利其器 无序列表 学习使用工具,提高效率 不断地输出,才能证明自己会了而不是懂了 学会遵守规则,才能...

  • 工具的使用

    自人类初始,我们的祖先都在借助工具进行生产生活。随着社会的进步,生产工具也不断的在进步。 在学校里也是一样,记得以...

  • 工具的使用

    一直觉得APP的使用应该是每天要进行的事情,这样才是完全把它使用好了,下载才不算是无用功。 但是在实际的使用中发现...

  • 接口测试2--工具使用

    本节内容 抓包工具的使用 Postman的使用 抓包工具的使用 抓包工具简介 Chrome/Firefox 开发者...

  • 《人生效率手册》读书复盘14

    新知: 选择和使用工具数使用工具=实践 计划工具、总结工具、学习工具、反思工具 学习工具包括:读书笔记,演讲笔记社...

网友评论

      本文标题:xtream的工具使用

      本文链接:https://www.haomeiwen.com/subject/iosezttx.html