一开始编码用Dom4j解析XML,但对于复杂的XML,你会比较蛋疼。
JAXB依靠SCHEMA能够将JavaBean与XML内容进行映射,用很OO的方式解析XML。
使用起来也很简单,第一步,根据Schema生成对应的Java映射类(每个XML元素都是一个内部类),JDK中提供了工具xjc.exe,使用方法如下:
xjc -p 包名 schema文件名 -d 生成目录名
如:
xjc -p com.xasxt.spring.model spring.xsd -d src (src目录需要手工创建)
第二步,如果是要读XML文件,加上如下三行代码:
JAXBContext jc = JAXBContext.newInstance("com.xasxt.spring.model");
Unmarshaller unmarshaller = jc.createUnmarshaller();
//Beans是我的XML中根元素的名字,也是刚才生成的Java类的名字
Beans beans= (Beans)unmarshaller.unmarshal(new File( "src/demo.xml"));
第三步,如果是要输出XML文件捏,则这么做:
//ObjectFactory是xjc工具生成的类
ObjectFactory objFactory = new ObjectFactory();
//在内存中构建对象,此处代码比较啰嗦,不写全了
Beans bean = (Beans) objFactory.createBeans();
Beans.Bean bean = objFactory.createBeansBean();
JAXBContext jc = JAXBContext.newInstance("com.xasxt.spring.model");
Marshaller marshaller = jc.createMarshaller();
//输出格式
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, new Boolean(true));
marshaller.marshal(collection, new FileOutputStream("jaxbOutput.xml"));
直接抄网上的。后续详细优化其中注意的细节
相关推荐
本文档主要讲述的是使用JAXB处理XML文档;以简短的篇幅介绍了JAXB的基本使用,希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
JAXB (Java Architecture for XML Binding) 是 Java 中用于对象到XML以及XML到对象转换的API。它使得开发者能够轻松地将Java对象模型映射到XML文档,并反之亦然。在给定的例子中,我们将深入理解如何使用JAXB注解来...
总结来说,JAXB在处理XML时提供了一种强大的工具,能够方便地将XML文档转换为Java对象。对于嵌套子节点,我们可以通过创建对应的Java类模型来解析,或者结合XPath来直接提取字符串。理解并熟练运用这些技术,能有效...
总之,JAXB是Java开发中处理XML的强大工具,通过它可以高效地进行XML与Java对象之间的转换,简化了数据交换过程。熟练掌握JAXB的使用,能大大提高开发效率,并让代码更加简洁、易于维护。在实际项目中,可以结合标签...
在Java应用程序中,JAXB使得处理XML数据变得更加便捷,无需编写大量手动转换代码。 JAXB的核心概念包括以下几点: 1. **数据绑定**:JAXB提供了一种机制,可以将Java类和XML Schema定义之间的映射关系自动创建。这...
JAXB为开发人员提供了一种简单、高效的方式,使得在Java应用程序中处理XML文档变得更为便捷。通过JAXB,你可以将XML Schema定义的数据模型直接映射到Java类,反之亦然,从而方便地在XML和Java对象之间进行转换。 在...
StAX是一种事件驱动的XML解析API,它允许程序逐个处理XML事件,如开始元素、结束元素、文本等,而不是一次性加载整个文档到内存。这种方式降低了内存使用,提高了处理大型XML文档的效率。Woodstax是StAX的一种实现,...
JAXB作为Java标准库的一部分,是一个强大的工具,它简化了XML数据的处理,使得开发者可以更方便地在Java应用程序中使用XML。源码部分展示了如何通过注解将XML结构与Java对象对应起来,以及如何使用JAXB API进行解析...
总的来说,JAXB是Java开发中处理XML的强大工具,通过其提供的API,可以轻松地在XML文档和Java对象间进行转换,简化了XML处理流程,提升了开发效率。在实际项目中,理解并熟练掌握JAXB的使用对于任何涉及XML数据交换...
**JAXB(Java Architecture for XML Binding)** 是Java平台中用于处理XML的一种强大的工具,它提供了将XML文档与Java对象之间的映射,从而方便XML数据的解析和生成。通过JAXB,开发者可以轻松地实现XML数据到Java...
总的来说,JAXB是Java开发中处理XML数据的强大工具,尤其适合在Java EE环境中进行服务器端的数据交换。理解并熟练使用JAXB,能够极大地提高开发效率并减少错误,使得Java应用与XML数据的交互变得更加简单和高效。在...
**Java Architecture for XML Binding (JAXB)** 是Java平台上的一个标准技术,用于在XML文档和Java对象之间进行数据绑定。...理解并熟练运用JAXB,对于处理XML数据的Java开发者来说,是一项重要的技能。
当我们需要处理XML文件,比如从XML中提取数据时,JAXB(Java Architecture for XML Binding)是一个强大的工具。本教程将详细解释如何在Idea中利用JAXB来读取XML文件中的数据。 JAXB是Java标准API,它提供了将Java...
Java Architecture for XML Binding (JAXB) 是Java平台中用于处理XML和Java对象之间转换的一个标准技术。它允许我们将XML文档转换为Java对象,反之亦然,使得数据交换变得更加简单。在Java开发中,JAXB是处理XML数据...
Web服务(WebService)是一种基于开放标准的互联网应用集成技术,它允许不同的系统之间通过网络进行通信和交互。...通过理解JAXB的工作原理和使用方式,开发者可以更高效地处理XML数据,提升应用程序的性能和可维护性。
### 一、JAXB处理对象与XML互转 在Java程序中,JAXB通过注解(Annotations)和API来实现对象与XML之间的转换。以下是一些关键的概念: 1. **注解**:JAXB提供了一系列注解,如`@XmlRootElement`,`@XmlElement`,`...
Java Architecture for XML Binding (JAXB) 是Java平台中用于处理XML和Java对象之间转换的一个标准API。它使得在Java应用程序中使用XML数据变得更加方便,无需手动编写大量的转换代码。本教程将详细介绍JAXB如何实现...
在处理XML数据时,JAXB提供了一种方便的方式,让我们可以将XML数据解析为Java对象,也可以将Java对象序列化为XML格式。本话题我们将深入探讨如何使用JAXB将XML转换为Map。 XML是一种结构化数据表示方式,广泛用于...
1. **JAXB API类库**:这是JAXB的核心组件之一,用于提供API来处理XML绑定。 2. **XJC工具**:XJC是JAXB提供的一个编译器,用于从XML Schema生成Java类。 3. **Java Web Services Development Pack (JWSDP) 1.5**:...