JAXB(Java API for XML Binding)是JAX-WS规范中的一项数据绑定技术.
作用是在客户端与服务端通讯时将java对象特别是复杂对象解析成xml格式的soap包。通过http协议进行传输。
JAXB通过Marshal/unMarshal进行对象的编码和解码。
JAXB同时提供了一组注解
1、@XmlRootElement
把一个java类映射为xml根节点
2、@XmlElement
把一个java的属性映射为xml的一个element
3、@XmlAccessorType
与@XmlRootElement配合使用,通过XmlAccessType定义映射策略
@XmlAccessorType(XmlAccessType.PROPERTY):只映射有getter/setter方法的属性
4、@XmlTransient
指定属性不需要映射为xml
5、@XmlJavaTypeAdapter
java对象与xml进行转换的适配器
jaxb的示例代码
public static void main(String[] args) throws JAXBException {
JAXBContext ctx = JAXBContext.newInstance(User.class);
Marshaller marshaller = ctx.createMarshaller();
Unmarshaller unmarshaller = ctx.createUnmarshaller();
//将java对象编码为xml
User user = new User();
marshaller.marshal(user, System.out);
//将xml编码为java对象
String xml = "<user><name>zhangsan</name><age>20</age></user>";
User user2 = (User)unmarshaller.unmarshal(new StringReader(xml));
System.out.println(user2.getName());
}
分享到:
相关推荐
在实际开发中,JAXB2的应用场景非常广泛,比如在Web服务(如SOAP)中处理XML响应,或是将Java对象序列化为XML格式存储或传输。它的优点在于简化了XML数据的处理,使得开发者可以专注于业务逻辑,而不用过多关注底层...
**JAXB(Java Architecture for XML Binding)** 是Java平台中用于XML到Java对象绑定的API,它是Java EE和Java SE标准的一部分,允许开发者在Java应用程序中方便地将XML数据转换为Java对象,反之亦然。这个过程极大...
JAXB广泛应用于Web服务、配置文件解析、数据交换等领域。例如,在开发SOAP(Simple Object Access Protocol)Web服务时,JAXB可以方便地处理XML消息的序列化和反序列化。 **进一步学习资源:** 1. Java官方文档:...
1. `jaxb-api-2.2.7.jar`:这是JAXB的主要API,提供了基本的接口和类,如`javax.xml.bind.JAXBContext`和`javax.xml.bind.Marshaller`,用于实现XML和Java对象的转换。`JAXBContext`是整个转换过程的核心,负责创建...
4. **API支持**:`jaxb-impl.jar`包含JAXB的主要API,如`Unmarshaller`、`Marshaller`、`Binder`等接口,它们提供了XML和Java对象之间转换的基本操作。 **版本差异** 在提供的压缩包中,有两个不同版本的`jaxb-...
三、JAXB的基本使用 1. 定义Java类:首先,我们需要定义一个Java类,该类的属性对应XML文档中的元素和属性。JAXB会自动为这些属性生成getter和setter方法。 2. 创建JAXBContext:这是JAXB的核心,负责管理和控制XML...
通过分析这个"JAXB.zip_jaxb"压缩包的内容,我们可以学习到如何在NetBeans中创建和管理一个JAXB项目,理解JAXB的基本原理和用法,以及如何利用Ant进行构建和测试。这不仅有助于加深对JAXB的理解,也能够提升在实际...
**JAXB应用实例** Java Architecture for XML Binding (JAXB) 是Java平台标准版(Java SE)和企业版(Java EE)的一部分,它提供了一种在Java对象和XML文档之间进行映射的机制。JAXB允许开发者在不关心底层XML语法...
**JAXB(Java Architecture for XML Binding)**是Java平台中用于XML绑定的规范,它提供了一种自动将Java对象转换为XML文档以及从XML...通过学习这个简单的例子,你将能够掌握基本的JAXB操作,并将其应用于实际项目中。
- **概述**:介绍了 JAXB 的基本概念和技术特点。 - **文档**:提供了详细的使用指南、API 文档和技术规范。 - **软件许可**:明确了 JAXB 使用时的许可条款,通常遵循开放源代码许可证。 - **示例应用**:包含多个...
JAXB(Java Architecture for XML Binding)是Java平台上的一项标准技术,用于将XML文档与Java对象之间进行绑定。...在实际开发中,掌握JAXB的应用可以提高效率,特别是在处理大量XML数据的项目中。
理解XML的基本结构和语法规则对于有效利用JAXB至关重要。例如,了解命名空间、属性、元素、文本节点等,可以帮助你更好地设计和解析XML文档。 在压缩包文件`JAXB-master`中,可能包含了完整的JAXB HelloWorld示例...
根元素类对应XSD中的根元素,复杂类型类对应XSD中的复杂类型,简单类型类对应基本的XML数据类型。 3. **Java对象到XML的序列化**: - 一旦有了JAXB绑定的Java对象,就可以轻松地将它们转换为XML。使用`Marshaller`...
首先,我们需要了解JAXB的基本用法。JAXB的工作原理是基于Java类来生成XML schema,或者反过来基于XML schema生成Java类。当我们有一个XML文档,我们可以创建对应的Java类,这些类将作为映射的基础。然后,JAXB会...
**一、JAXB的基本概念** 1. **Java Bean**: Java Bean是Java中的一个简单对象,通常具有getter和setter方法,用于封装数据。在JAXB中,这些Bean类会被映射到XML元素和属性。 2. **XML Schema**: 定义了XML文档的...
假设我们有一个XML模式(catalog.xsd),定义了一篇在科学杂志上发表的文章的基本结构。此模式中的主要元素包括`catalog`, `journal`, 和 `article`等。具体模式如下所示: ```xml ...
**Java Architecture for XML Binding (JAXB)** 是Java平台上的...在实际开发中,JAXB广泛应用于Web服务交互、数据持久化和配置文件解析等领域。了解并熟练掌握JAXB的基本使用,对于任何Java开发者来说都是十分重要的。
首先,我们需要理解JAXB的基本工作原理。JAXB基于Java注解,这些注解用于标记Java类和它们的属性,以便JAXB知道哪些元素和属性应该映射到XML中。最常见的注解有`@XmlRootElement`,用于标记作为XML根元素的类;`@...
1. **jaxb-api-2.2.6.jar**: 这是JAXB API的实现,包含了用于XML绑定的基本接口和类。它定义了如何在Java类和XML文档之间映射的规范,如`@XmlRootElement`、`@XmlElement`等注解,以及`Unmarshaller`、`Marshaller`...
### JAXB的基本概念 1. **Java类到XML Schema的映射**:通过`@XmlRootElement`和`@XmlElement`等注解,可以将Java类和其属性映射为XML元素和属性。例如,一个名为`Person`的类可以通过注解映射到一个XML文档的根...