`
maomaode
  • 浏览: 120558 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAXB如何Marshal父类?

    博客分类:
  • JAVA
阅读更多
<link rel="stylesheet" type="text/css" href="http://maomaode.bokeland.com/plugins/plogeshi/styles/plogeshi.css">假设我们有这样的Schema:

<complexType name="Meta">
       <sequence>                
          <element name="name" type="string"/"">
           <element name="description" type="string"/"">
       </sequence>
   </complexType>
 
   <complexType name="Store">
       <complexContent>
           <extension base="Meta">
               <sequence>
                   <element name="books" type="Book" maxoccurs="unbounded"/"">
               </sequence>
           </extension>
       </complexContent>
   </complexType>
 
   <element name="store" type="Store"/"">
   <element name="meta" type="Meta"/""> 
 

注意到Store 继承了Meta, 如果我们有一个Store的对象,但是我们只想Marshal出继承Meta部分的内容,即希望得到下面这样XML

<meta>
<name>my book store </name>
<description> abc </description>
</meta> 
 

应该怎么写呢?答案其实就在于你怎么构建JAXBContext

JAXBElement jaxbElement = 
    (JAXBElement)m.invoke(objFactory.newInstance(), store);
 
JAXBContext jc = JAXBContext.newInstance(Meta.class);
Marshaller marshaller = jc.createMarshaller();
marshaller.marshal(jaxbElement, os); 
 

分享到:
评论

相关推荐

    javax.rar(jaxb-impl-2.3.0、jaxb-core-2.3.0、jaxb-api-2.3.0)

    标题中的"jaxb-impl-2.3.0、jaxb-core-2.3.0、jaxb-api-2.3.0"是JAXB的不同组件版本号,它们在处理XML到Java对象之间的转换时起到关键作用。在描述中提到的“Maven项目中缺少jaxb-api的异常报错”,通常指的是在运行...

    JAXB2 jaxb-api.jar jaxb-xjc.jar jaxb-impl.jar activation.jar

    JAXB2,全称为Java Architecture for XML Binding 2,是Java平台上的一个标准技术,用于在XML和Java对象之间进行绑定。它允许开发者通过简单的API将XML文档转换为Java对象,反之亦然,大大简化了XML数据处理。JAXB2...

    JAXB的 eclipse插件

    JAXB(Java Architecture for XML Binding)是Java平台上的一个标准,它提供了一种在Java对象和XML文档之间进行映射的机制。Eclipse作为一款强大的Java集成开发环境,为开发者提供了丰富的插件支持,其中包括JAXB的...

    jaxb (XML操作)

    通过JAXB,开发者可以轻松地实现XML数据到Java对象的转换(unmarshal)以及Java对象到XML数据的转换(marshal)。这个过程极大地简化了XML在Java应用中的操作。 **XML操作的基本概念:** XML(eXtensible Markup ...

    JAXB的安装包及插件

    **JAXB(Java Architecture for XML Binding)** 是Java平台中用于XML到Java对象绑定的API,它是Java EE和Java SE标准的一部分,允许开发者在Java应用程序中方便地将XML数据转换为Java对象,反之亦然。这个过程极大...

    jaxb-api-2.1.jar 和 jaxb-impl-2.1.8.jar

    `jaxb-api-2.1.jar` 和 `jaxb-impl-2.1.8.jar` 是Java应用程序中用于XML绑定(Java Architecture for XML Binding,简称JAXB)的重要库文件。JAXB是Java SE和Java EE平台的标准部分,它提供了一种将XML文档与Java...

    activation.jar jaxb1-impl.jar jaxb-api.jar jaxb-impl.jar jaxb-xjc.jar jsr173_1.0

    这些文件是Java编程环境中常用的库文件,主要用于XML绑定(Java Architecture for XML Binding,JAXB)和JavaBeans Activation Framework(JAF)。在Java应用程序开发中,尤其是处理XML数据时,这些库扮演着至关重要...

    jaxb-api jaxb-impl jar

    `jaxb-api`和`jaxb-impl`是JAXB框架的核心组成部分。这两个JAR文件在处理XML到Java对象的绑定过程中扮演着关键角色。 1. **jaxb-api.jar**: 这个库包含了JAXB API,即Java接口和抽象类,定义了JAXB的工作方式。它...

    jaxb生成XML例子

    适配器需要扩展`XmlAdapter`并重写`marshal()`和`unmarshal()`方法。 8. **@XmlAccessorType(XmlAccessType.PROPERTY)**: 与`FIELD`相反,`PROPERTY`表示JAXB将根据getter和setter方法来绑定属性,而不是直接访问...

    jaxb2.3.0依赖jar.rar

    Java Architecture for XML Binding (JAXB) 是Java平台中用于XML到Java对象绑定的标准技术,它允许开发者在Java程序中直接操作XML数据,而无需编写大量的XML解析和序列化代码。JAXB 2.3.0是该技术的一个版本,包含了...

    jaxb-impl.jar jaxb-api.jar jsr173_1.0_api.jar

    Java Architecture for XML Binding (JAXB) 是Java平台中用于XML数据绑定的标准库,它使得Java对象和XML文档之间可以进行无缝转换。在给定的压缩包文件中,包含了一些核心的JAXB组件以及相关的依赖库,如`jaxb-impl....

    jaxb-api.jar.jaxws-api.zip_ jaxb-api.jar_cxf_jax-ws.jar_jaxb-api

    标题提到的"jaxb-api.jar.jaxws-api.zip_ jaxb-api.jar_cxf_jax-ws.jar_jaxb-api",是针对这个问题提供的一组支持包。 **JAXB(Java Architecture for XML Binding)** 是Java平台的一个标准,它允许开发者将XML文...

    idea 中用jaxb 读xml中数据

    当我们需要处理XML文件,比如从XML中提取数据时,JAXB(Java Architecture for XML Binding)是一个强大的工具。本教程将详细解释如何在Idea中利用JAXB来读取XML文件中的数据。 JAXB是Java标准API,它提供了将Java...

    jaxb解析生成xml

    Java Architecture for XML Binding (JAXB) 是Java平台中用于处理XML和Java对象之间转换的一个标准技术。它允许我们将XML文档转换为Java对象,反之亦然,使得数据交换变得更加简单。在Java开发中,JAXB是处理XML数据...

    android上使用 jaxb所需要的包

    在Android平台上进行开发时,有时候我们需要处理XML数据,这时候JAXB(Java Architecture for XML Binding)就显得非常有用。JAXB是Java SDK中的一个标准API,它允许开发者将XML文档与Java对象之间进行自动的双向...

    jaxb api jar

    Java Architecture for XML Binding (JAXB) 是Java平台中用于XML数据绑定的标准API,它使得Java对象和XML文档之间可以进行无缝转换。`jaxb-api-2.1.9.jar` 是一个包含JAXB API的库文件,版本为2.1.9,用于支持开发...

    JAXB乱码问题解决

    在Java开发中,JAXB(Java Architecture for XML Binding)是一个用于将XML文档和Java对象之间进行绑定的技术。在处理XML文件时,特别是涉及到序列化和反序列化时,可能会遇到字符编码问题,即所谓的“乱码”。这个...

    JAXB的例子

    marshaller.marshal(book, System.out); ``` **JAXB的使用场景** - 数据交换:在Web服务、API调用等场景下,JAXB常被用于JSON或XML数据的序列化和反序列化。 - 配置文件处理:在处理XML配置文件时,JAXB可以帮助...

    利用jaxb实现xml和bean互转

    marshaller.marshal(user, System.out); Unmarshaller unmarshaller = context.createUnmarshaller(); User deserializedUser = (User) unmarshaller.unmarshal(new StringReader(userXML)); System.out....

    java学习之jaxb的学习一

    3. Marshalling:通过JAXBContext的marshal方法将Java对象转换为XML。 4. Unmarshalling:通过JAXBContext的unmarshal方法将XML文档解析为Java对象。 四、JAXB注解 JAXB提供了一系列注解,如@XmlRootElement、@...

Global site tag (gtag.js) - Google Analytics