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 @XStreamOmitField
3 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>泛型声明;