XStream xml 解析框架使用笔记

1. xml的标签可以映射为类、类成员变量

2. 有子标签的标签映射为类,没有子标签的便签映射为类成员变量

3. 类名、类成员变量名如与标签名不一致需要通过注解或代码设置别名

1 // 类名
2 @XStreamAlias("Info")
3 xStream.aliasType("Info", YLTextInfo.class);
4 // 类成员变量名
5 @XStreamAlias("Token")
6 xStream.aliasField("标签名", YLTextInfo.class, "字段名");

4. 列表标签的注解与代码配置

1   @XStreamImplicit(itemFieldName = "Info")  // 数组元素标签
2   private List<T> infoList;
//   所在类的类型,列表字段名,列表元素类型1    xStream.addImplicitCollection(YLResult.YLList.class, "list", YLTextInfo.class);

5. 不需要的字段需要忽略掉  

1  // 注解2   @XStreamOmitField3   private YLList<T> list;4  // 代码5     xStream.omitField(YLResult.class, "List");

6.  解析XML之前需要让xStream处理目标类的注解,(泛型类也需要)

1    xStream.processAnnotations(YLTextInfo.class);
2    xStream.processAnnotations(YLResult.class);

注:返回为泛型时需要在泛型前添加<T>泛型声明;     

时间: 2024-10-17 04:32:43

XStream xml 解析框架使用笔记的相关文章

Android自己动手打造XML解析框架

我们在工作中,经常会从服务器获取数据并进行解析,服务器返回的数据有两种:json和xml.json我们可以用gson或者fastjson等优秀的开源框架去进行解析,省去不少麻烦,通常我们只需要把bean设计出来,然后调用一句话就可以解析成功了.而解析xml数据,我们得去一个标签一个标签的去比较,修改起来也非常麻烦,比如我们现在不需要某一个标签上的数据了,我们还得去把代码中那一行给删除,如果我们的需求又变了,现在又需要加上某个标签的数据,那只能再到代码中把相应代码加上,这样非常麻烦,这篇文章我们将

XML解析框架概览

iOS SDK 提供了两个XML框架: 1.NSXML,基于Objective-C语言的SAX解析框架,他是iOS SDK默认的XML解析框架,他不支持DOM模式. 2.libxml2,基于C语言的第三方提供的sax解析框架,他被苹果整合在iOS SDK中,它支持sax和dom模式. 解析XML的其它第三方框架: 1.TBXML,是轻量级的DOM解析模式 2.TouchXML,基于DOM模式解析库,与TBXML类似,只能读取XML不能写入XML文档. 3.KissXML,基于DOM模式解析库,它

iOS网络数据解析之XML解析-GDataXML

GDataXML 第三方xml解析框架 DOM解析:一次性将整个XML文档加载进内存,比较适合解析小文件 GDataXML中常用的类 GDataXMLDocument: 代表整个XML文档 GDataXMLElement: 代表文档中的每个元素 使用attributeForName:方法可以获得属性值 要使用GDataXML,先要对项目进行一些配置.1>导入libxml2动态库targets--Build Phases--link Binary With Libraries 2>设置libxm

跨平台支持的WebService接口Demo,利用xstream快速解析和生成xml文件

原文:跨平台支持的WebService接口Demo,利用xstream快速解析和生成xml文件 源代码下载地址:http://www.zuidaima.com/share/1591110000167936.htm 这个是我本人写的CXF的WebService的一个正在项目中使用的程序, 支持跨平台,经测试,java和C#客户端能正常使用,其中利用Xstream生成和解析xml,不需要修改对象;支持内部私有字段,直接根据生成java类生成xml,反过来根据xml生成java类. 运行说明: 部署到

android XMl 解析神奇xstream 六: 把集合list 转化为 XML文档

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml android XMl 解析神奇xstream 三: 把复杂对象转换成 xml android XMl 解析神奇xstream 四: 将复杂的xml文件解析为对象 android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的

android XMl 解析神奇xstream 四: 将复杂的xml文件解析为对象

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml android XMl 解析神奇xstream 三: 把复杂对象转换成 xml 1.文件准备 把一个预先写好的xml文件放在android项目目录的 asset 文件夹. 文件内容为: <blog> <age>30</age> <

android XMl 解析神奇xstream 三: 把复杂对象转换成 xml

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml 1.JavaBeen package com.android10; public class Person { String pName ; String pAge ; public String getpName() { return pName; } pub

android XMl 解析神奇xstream 二: 把对象转换成xml

前言:对xstream不理解的请看:android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 1.Javabeen 代码 package com.android10; public class Product { private String name ; private String age ; public String getName() { return name; } public void setName(Strin

android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml android XMl 解析神奇xstream 三: 把复杂对象转换成 xml android XMl 解析神奇xstream 四: 将复杂的xml文件解析为对象 1.建立JavaBeen package com.android10; public class