`
penjed
  • 浏览: 3090 次
  • 性别: Icon_minigender_1
  • 来自: 南昌
文章分类
社区版块
存档分类
最新评论

Jaxb处理XML

 
阅读更多

   一开始编码用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来处理对象与XML进行互转。 其中关于CDATA数据的处理参考: Jaxb如何优雅的处理CData 这篇文章的实现,并略作改动。 二、常用注解(TODO) 三、封装 3.1 pom依赖(TODO) 3.2 CDataAdapter ...

    JAXB完成XML和Java对象的互转

    JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项...从另一方面来讲,JAXB提供了快速而简便的方法将XML模式绑定到Java表示,从而使得Java开发者在Java应用程序中能方便地结合XML数据和处理函数。

    xml转javaBean,javaBean转xml,xml标签大小写问题,以及对xml特殊符号的处理

    xml转javaBean,javaBean转xml,xml标签大小写问题,CDATA的生成,以及对xml特殊符号的处理

    JAXB2_20080829.jar

    JAXB2_20080829.jar (JAXB)是一...JAXB提供了一种快速和方便的方式来将一个XML模式绑定到Java代码的一个表示上,使得Java开发者能够更轻松地将XML数据和Java应用中的处理函数融合在一起,而不必对XML本身有很多的了解。

    Java and XML, 3rd Edition

    全面讲解了SAX、DOM、StAX、JDOM以及dom4j的应用程序编程接口,同时还囊括了最新版本的用于XML处理的Java应用程序编程接口(JAXP)和用于XML绑定的Java架构(JAXB)的相关知识。第三版还彻底重写了有关网络技术的...

    返利网java源码-jaxb:用于XML绑定类的Java架构的JRuby脚本

    它构成了一个用于处理 XML 文档的便捷框架,与以前可用的方法(例如遵循文档对象模型 (DOM) 的方法)相比,具有显着的优势。 (来自 JAXB 教程) JAXB 运行时库由 Binding Compiler (XJC) 生成的代码支持,提供了从...

    JAVA与XML.rar

    全面讲解了SAX、DOM、StAX、JDOM以及dom4j的应用程序编程接口,同时还囊括了最新版本的用于XML处理的Java应用程序编程接口(JAXP)和用于XML绑定的Java架构(JAXB)相关知识。第三版还彻底重写了有关网络技术的章节,...

    jackson-dataformat-xml:Jackson JSON处理器的扩展,增加了对将POJO序列化为XML(以及从XML反序列化)的支持,以替代JSON

    概述 该项目包含用于读取和写入编码数据的扩展组件。 此外,目标是模拟数据绑定如何与“代码优先”方法一起工作(即,不添加对“架构优先”方法...但是,此模块可能还支持JAXB无法处理的构造和用例:特别地,支持Jacks

    用Java处理XML数据

     Java原生内置的处理XML的技术基本有这么几种:DOM,SAX,Stax,Jaxb  DOM :Document Object Model 顾名思义是在内存中构建树形结构。处理小的XML文件还算勉强应付。如果文件比较大,他需要一次性装载整个XML,...

    xml-processor-example:JavaFX应用程序实现示例XML处理应用程序

    xml处理器示例 JavaFX应用程序实现示例XML处理应用程序 主要功能: 使用JAXB的XML对象绑定 基本的CRUD操作 XML模式验证 XML到PDF的转换

    jaxb-xmldsig-core-1.0.0-sources.jar

    xml的格式化处理,xml打开提示需要格式化信息,或没有安装相应的jar。

    Java and XML

    Java 处理XML相关的技术介绍

    JAVA6新特性介绍

    JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式,反之亦然。我们把对象与关系数据库之间的映射称为ORM, 其实也可以把对象与XML...另外,JAXB在底层是用STAX(JSR173)来处理XML文档。

    Spring+Cloud+配置.pdf

    JAXB (Spring XML 序列化) SAX (Simple API for XML) XML Stream XStream Properties(JDK API 可处理) Key Value 配置模式 XML 配置模式 .ini(JDK Properties API 可处理) JSON(第三方) YAML(第三方...

    castor R/M映射神器

    提供处理XML、Directory、XADirectory的类库,提供从XML到JAVA类的转换机制。Castor(http://castor.exolab..org/)是一种将Java对象和XML自动绑定的开源软件。它可以在Java对象、XML文本、SQL数据表以及LDAP目录...

    jaxb2-fixed-value:JAXB2 固定值插件

    请注意,JAXB 本地处理 xs:attribute 的固定值,因此此插件对于固定的属性不是必需的。 该插件在从 XML 模式为用户界面生成值对象时特别有用。 用户界面标记(例如 Struts HTML 标记)使用对 bean 属性的反射来...

    JAVA_API1.6文档(中文)

    javax.xml.bind.helpers 仅由 JAXB 提供者用于: 提供某些 javax.xml.bind 接口的部分默认实现。 javax.xml.bind.util 有用的客户端实用工具类。 javax.xml.crypto 用于 XML 加密的通用类。 javax.xml.crypto.dom...

    JAX-WS的lib、src和docs

    2.用来处理Marshal/Unmarshal的XML Binding机制,JAX-WS2.0用JAXB2来处理Java Object与XML之间的映射,Marshalling就是把Java Object映射到XML,Unmarshalling则是把XML映射到Java Object.之所以要做Java Object与XML的...

    JDK1.6新特性与实战例子

    StAX(JSR 173)是JDK6.0中除了DOM和SAX之外的又一种处理XML文档的API JDK6的新特性之四:使用Compiler API 现在我们可以用JDK6 的Compiler API(JSR 199)去动态编译Java源文件 JDK6的新特性之五:轻量级...

    jackson-jar

    受java平台上各种处理xml的类库(StAX, JAXB等)启发,Jackson提供一种处理json的java类库。Jackson的目标是为开发者提供快速、准确、轻量级和用起来最爽的json处理类库。本文将概括介绍Jackson的主要功能和相关功能...

Global site tag (gtag.js) - Google Analytics