如何将xml的数据转化为实体
Posted 软件测试工程师之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将xml的数据转化为实体相关的知识,希望对你有一定的参考价值。
今天此节讲解的是如何将xml的数据转化为特定格式的实体。
Java中如何将xml转化为实体呢?用的是什么样的库呢?
Java中常用的主要是JAXB,JAXB就是Java Architecture for XML Binding的简写,JAXB是一个业界的标准,是一项可以将XML Schema产生Java类的技术。
JAXB中主要的类和接口:
JAXBContext:用于管理XML/Java绑定信息
Marshaller接口:将Java对象序列化为XML数据
Unmarshaller接口:将XML数据反序列化为Java对象
JAXB中重要的注解:
@XmlType 将Java类或枚举类型映射到XML模式类型
@XmlAccessorType(XmlAccessType.FIELD),控制字段或属性的序列化。FIELD表示JAXB将自动绑定Java类中的每个非静态的(static)、非瞬态的(由@XmlTransient标注)字段到XML。其他值还有XmlAccessType.PROPERTY和XmlAccessType.NONE。
@XmlElementWrapper 对于数组或集合,即包含多个元素的成员变量,生成一个包装该数组或集合的xml元素
@XmlRootElement 将Java类或枚举类型映射到xml元素
@XmlElement 将Java类的一个属性映射到与属性同名的一个XML元素
@XmlAttribute 将Java类的一个属性映射到与属性同名的一个XML属性
弄懂了上面的部分,如下
第一步:初始化JAXBContext对象
第二步:xml数据转化为输入流
第三步:反序列化
其中的反序列化的Java类要写明对应的xml注解,如下:
写明一个类,并写明属性,然后生成对应的get和set方法即可,要注意对应的元素和属性的注解不要弄错,如下:
以上是关于如何将xml的数据转化为实体的主要内容,如果未能解决你的问题,请参考以下文章