JAXB的工作原理与基本用法

来源:互联网 发布:防雾霾口罩 知乎 编辑:程序博客网 时间:2024/06/07 02:12

 JAXB用途

1、将Java对象序列化为XML(出处)

2、将XML数据文件解析成一个Java对象(出处)

JAXB的工作原理(该段文字与图片出处)


    JAXB映射主要由四个部分组成:schema、 JAXB、 XML文档和Java对象。

    对比Hibernate映射来说明这四项的工作原理:

         schema可以看作是数据库中的表结构,document(XML文档)是表中的一条条的数据,

         而jaxb可以看作是hibernate,他提供schema到java对象的映射,类似于xxx.HBM格式的映射文件。

         将XML转换成java对象的过程叫Unmarshal.
         而将java对象转换成XML的过程叫Marshal


 JAXB使用具体步骤(该段文字出处)

 一、 Java对象 to XML

    1. 通过映射的类创建XMLContext上下文对象,其中参数为映射的类。
                 JAXBContext context = JAXBContext.newInstance(Article.class)
    2. 通过JAXBComtext上下文对象的createMarshaller()方法,创建一个对象java格式转化成XML的格式,代码如下
                 Marshaller m = context.createMarshaller();
    3. 最后,将JAVA对象转换到制定的输出位置,其中的article为java对象。
                 m.marshal(article,xmlFile);

二、 XML to Java对象

    1. 通过映射的类创建XMLComtext上下文对象,其中参数为映射的类。
                 JAXBContext context = JAXBContext.newInstance(Article.class);
    2. 通过JAXBContext上下文对象创建createUnmarshaller()方法,创建XML转换成JAVA对象的格式。
                 Unmarshall m = context.createUnmarshaller();
    3. 最后,将XML转换成对映的类,转换后需要强制性转换成映射的类
                 Article article = (Article)m.unmarshaller(xmlFile);

JAXB相关注解(点击此处)

JAXB简单实例(点击此处)


0 0