如何将xml的数据转化为实体

Posted 软件测试工程师之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将xml的数据转化为实体相关的知识,希望对你有一定的参考价值。

今天此节讲解的是如何将xml的数据转化为特定格式的实体。

Java中如何将xml转化为实体呢?用的是什么样的库呢?

Java中常用的主要是JAXBJAXB就是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.PROPERTYXmlAccessType.NONE 

@XmlElementWrapper 对于数组或集合,即包含多个元素的成员变量,生成一个包装该数组或集合的xml元素

@XmlRootElement Java类或枚举类型映射到xml元素

@XmlElement Java类的一个属性映射到与属性同名的一个XML元素

@XmlAttribute Java类的一个属性映射到与属性同名的一个XML属性

 

弄懂了上面的部分,如下

第一步:初始化JAXBContext对象

第二步:xml数据转化为输入流

第三步:反序列化

其中的反序列化的Java类要写明对应的xml注解,如下:

写明一个类,并写明属性,然后生成对应的getset方法即可,要注意对应的元素和属性的注解不要弄错,如下:


以上是关于如何将xml的数据转化为实体的主要内容,如果未能解决你的问题,请参考以下文章

数据库系统--如何将ER转化为关系模式

数据库系统--如何将ER转化为关系模式

数据库系统--如何将ER转化为关系模式

xstream如何将java对象转化成有cdata的xml

如何将数据实体转换为 JSON 字符串

如何将数据实体转换为 JSON 字符串