`
旁边的手
  • 浏览: 67107 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于JAXB1.0的一些小研究

    博客分类:
  • JAXB
阅读更多
     在一个项目用到了JAXB1.0,用来解析复杂的XSD文件,
     其中我们采用过N多方案处理XSD,包括XMLBeans,当然JDOM,DOM,SAX也都考虑使用,不过,由于后面几种会手写巨多的代码,当然没有被受我这个比较偷懒的人青睐了哟,呵。另外JDK我们用的1.4,迫使我用JAXB1.0,要是用JAXB2.0以上,我们处理XSD就更加如鱼得水了。
     不过在项目中采用JAXB1.0,遇到了很多问题,其中:
      jaxb1.0解析xsd时,是将xsd的层级结构处理成内部类的形式,
      这样,就出现了一个问题,如果xsd层级结构深,复杂的话,内部类的名字会非常的冗长
      因为内部类的命名是按层次累加过来的
      经过测试,得到一下数据:
      windows文件系统, 路径+文件名的长度不能大于255(最大为254)
     java虚拟机对class名字的限制是,class名不能超过248(248+".class" = 254)
      如果文件名过长,会导致class不能加载的错误      不过我们最后的解决方案:是手工改的名。不知道网友们有没有更好的办法,让我采纳下,十分感谢众多网友共现探讨研究。
     
附:xjc命令行接口的一些选项列如下:
-nv                对于输入的模式不执行严格的XML验证
-b <file>          指定外部的绑定文件
-d <dir>           指定生成的文件的存放路径
-p <pkg>           指定目标包
-classpath <arg>   指定classpath
-use-runtime <pkg> impl.runtime包不被生成
-xmlschema         输入的模式是一个W3C XML模式(默认)
3
1
分享到:
评论
6 楼 旁边的手 2009-01-11  
yefeng 写道

不知道JAXB2.0使用性能怎么样

对xsd生成JAVA对象,更加智能化了,比1.0的爽快多了。
5 楼 yefeng 2009-01-04  
不知道JAXB2.0使用性能怎么样
4 楼 旁边的手 2008-12-31  
我知道呀,JDK1.6话,我们用的WEBLOGIC81的话,只能用JDK1.4了,无耐呀。
3 楼 yefeng 2008-12-31  
还是直接用JDK1.6吧,1.6已经整合了JAXB2.0。
2 楼 旁边的手 2008-12-30  
是的,JAXB2.0支持JDK1.5呀,我们项目用的JDK1.4,没有办法呀,
JAXB2.0的话,有XSD就可以直接引进来,如果是JAXB1.0的话,对引入的XSD处理不了,只能处理单个的XSD文件,我们后面把引入拼到一个中去的,还是好费事的,不过相对对XSD数据的处理方便多了。
1 楼 puroc 2008-12-30  
我们项目之前遇到一次core dump问题就是有jaxb1引起的。后来换了jaxb2就好了。jaxb2各方面还是不错的,就是启动速度有点慢。

相关推荐

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

    在给定的压缩包文件中,包含了一些核心的JAXB组件以及相关的依赖库,如`jaxb-impl.jar`、`jaxb-api.jar`和`jsr173_1.0_api.jar`,这些都是解决在Maven项目中这些特定jar包缺失问题的关键。 首先,`jaxb-impl.jar`是...

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

    6. **jsr173_1.0_api.jar**:这是JSR 173(Streaming API for XML,StAX)的API,它提供了一种更高效的方式处理XML文档,允许程序以迭代或事件驱动的方式读写XML,而不是传统的DOM模型,这样可以显著减少内存占用和...

    jaxb_impl,api,xjc,jsr

    总之,JAXB是一个强大的Java技术,结合了activation.jar、jaxb1-impl.jar、jaxb-api.jar、jaxb-impl.jar、jaxb-xjc.jar以及jsr173_1.0_api.jar等组件,为XML和Java对象间的交互提供了便利。无论是开发新项目还是维护...

    JAXB的 eclipse插件

    5. **图形化界面设计**:一些高级插件甚至提供了图形化的XML Schema设计工具,帮助开发者直观地构建和修改XML Schema。 6. **调试支持**:在开发过程中,插件可以提供XML和Java对象之间的调试工具,帮助定位和解决...

    maven-jaxb-schemagen-plugin-1.0.jar

    maven-jaxb-schemagen-plugin-1.0.jar

    glassfish-jaxb-2.2.5-6.el7.noarch.rpm

    离线安装包,亲测可用

    JAXB的安装包及插件

    对于IntelliJ IDEA,虽然内置了一些基本的JAXB支持,但也可以安装如"Java2WSDL"这样的插件来增强功能。 **JAXB的基本用法** - **生成Java类**:JAXB提供了一个工具`xjc`,可以将XML Schema文档转换为对应的Java类...

    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...

    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的异常报错”,通常指的是在运行...

    jaxb-api jaxb-impl jar

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

    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...

    maven-jaxb-schemagen-plugin-1.0-sources.jar

    maven-jaxb-schemagen-plugin-1.0-sources.jar

    jaxb2.3.0依赖jar.rar

    JAXB 2.3.0引入了一些新的特性和改进,包括: 1. **Java SE 9+支持**:JAXB 2.3.0开始支持Java 9及其后续版本,这包括模块化系统(Jigsaw)的集成。 2. **API增强**:可能包含了新的API接口或方法,以提供更丰富的...

    android上使用 jaxb所需要的包

    可能需要一些额外的适配工作,例如使用第三方库如RetroLambda来支持Java 8的特性,或者使用其他XML处理库如Gson或Jackson作为替代方案。 总的来说,虽然Android原生不支持JAXB,但通过引入相应的jar包,开发者仍然...

    jaxb api jar

    JAXB 2.1.9 版本修复了一些已知问题,提高了性能,并提供了新的特性。 使用JAXB,开发者首先需要定义Java类来表示XML结构,然后通过JAXB的`@XmlRootElement`和`@XmlElement`等注解来标注这些类,以便JAXB能够理解...

    idea 中用jaxb 读xml中数据

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

    JAXB乱码问题解决

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

    jaxb生成XML例子

    JAXB (Java Architecture for XML Binding) 是 Java 中用于对象到XML以及XML到对象转换的API。它使得开发者能够轻松地将Java对象模型映射到XML文档,并反之亦然。在给定的例子中,我们将深入理解如何使用JAXB注解来...

    jaxb-ri-2.2.7

    **JAXB 2.2.7** 版本是JAXB的一个特定发行版,可能包含了对之前版本的一些错误修复、性能优化和新功能。由于没有提供具体的描述,我们可以推测这个版本可能专注于增强稳定性,提高兼容性,以及对Java 6和7的支持。...

Global site tag (gtag.js) - Google Analytics