Java开源 XML操作类库

XML|XSD 专栏收录该内容
7 篇文章 0 订阅

 Xerces 
Xerces是由Apache组织所推动的一项XML文档解析开源项目,它目前有多种语言版本包括JAVA、C++、PERL、COM等。

更多Xerces信息

 JDOM 
JDOM 是一种面向Java的读、写和操作XML文档的API。JDOM 与现行的SAX 和DOM标准兼容,为Java 程序员提供了一个简单、轻量的XML文档操作方法。由于JDOM是专门为Java 程序员开发的,所以采用许多Java语言的优秀特性,比如方法重载、集合(Collections)和类映射(Reflection)。

更多JDOM信息

 dom4j 
Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。

更多dom4j信息

 XOM 
XOM虽然也是一种面向对象的XML API,类似于DOM 的风格,但是它有一些与众不同的特性比如严格保持内存中对象的不变性,从而使XOM实例总是能序列化为正确的XML。此外,与其他Java XML API相比,XOM 追求更简单和更正规。

更多XOM信息

 JiBX 
JiBX是一个为Java提供的XML数据绑定框架。它可以和现存的类一起运行,使用一个灵活的映射定义文件来决定如何将数据对象转换成XML。

更多JiBX信息

 KXML 
KXML是一个只占很小存储空间的XML语法分析程序,对于J2ME应用程序非常适合。它有一个非常独特的DOM操作方法和被称为Pull的语法分析方法。它有以下性能:  
· 支持XML名称空间   
· 用"松散"模式分析HTML或其它SGML格式   
· 占用很少的存储空间(21 kbps)   
· 基于Pull的分析   
· 支持XML写操作   
· 可选的DOM支持   
· 可选的WAP支持

更多KXML信息

 XMLBeans 
XMLBeans是一个XML-Java绑定工具,利用它可以很方便地解析XML文档。Eclipse支持插件: xmlbeansplug (在线更新 地址 )。

更多XMLBeans信息

 jConfig 
因 为properties的局限性,有时候得使用XML文件来定义应用的配置参数,jConfig 正是这样一个读写XML配置文件的工具。开发者在 Java 程序中只需要使用get/set方法就能读取修改 XML 文件中的配置参数。jConfig 目前只支持两层结构,最新版本为 2.3。

更多jConfig信息

 XStream 
XStream使用起来非常简单,不需要预先生成相关的辅助类,不需要映射文件。当然,使用简单也注定了它只能处理简单结构的 XML 文件。

更多XStream信息

 XJR 
一个XML的Java绑定框架,它的主要特点是不需要映射文件,用XJRDTDCompiler直接通过DTD文件生成Java文件,也可以用 XJRDTDCreator对Java类处理生成DTD文件。当然也有不足,就是还不支持Schema。

更多XJR信息

 Piccolo XML Parser 
Piccolo是利用java快速解析XML文档的开源项目。它实现 SAX 1, SAX 2.0.1, and JAXP 1.1 接口作为一个(Non-validating)非验证剖析器。

更多Piccolo XML Parser信息

 NanoXML 
NanoXML是一个能在CLDC 环境下运行的开放源代码非确认性(不做验证工作直接进行解析)的XML 分析器。Nanoxml是一步解析器(非常小6KB的XML解析器),一次就把文档解析完并以一个树状的结构传回。

更多NanoXML信息

 XP Parser 
XP是一个Java开发的XML1.0解析器.它当前是一个非验证解析器,然而它可以解析所有外部实休:外部DTD子集,外部参数实体,普通的外部实体.

更多XP Parser信息

 Commons-Digester 
Digester基于规则的XML文档解析,主要用于XML到Java对象的映射.

更多Commons-Digester信息

 NunniMJAX 
NunniMJAX是一个Java非验证XML解析器。它的APIs与功能类似于SAX.这意味着你如果熟悉SAX你将很容易掌握这个解析器。

更多NunniMJAX信息

 Crimson 
Crimson是一个基于Java的XML解析器.它通过JAXP1.1,SAX2.0,SAX2扩展版本1.0,DOM Level 2 Core Recommendation来支持XML1.0.

更多Crimson信息

 JOX 
JOX是一组Java类库,它使得在XML文档与Java Beans之间进行数据转换变得容易.你可以把JOX想象成Java对象序列化(Java Object Serialization)的一个种特殊形式,利用XML作为序列化的格式.

更多JOX信息

 JaxMe 
JaxMe是对JAXB(Java/XML绑定规范)的一种开放源代码实现。它对基本的JAXB 规范作了一些改进之外并且集成了数据库和Enterprise JavaBeans.

更多JaxMe信息

 XMLConfigReader  
XMLConfigReader是对Java ResourceBundle类的一个开源扩展.利用它可以直接从XML文件中读取配置数据并把数据存储在一个HashTable中.

更多XMLConfigReader 信息

 JVoiceXML 
JVoiceXML一个开源的VoiceXML解析器.

更多JVoiceXML信息

 Woodstox 
Woodstox是一个快速开源且符合StAX(STreaming Api for Xml processing)规范的XML处理器(做为一个处理器意味着它可以处理输入(相当于解析)与输出(相当于写入,序列化))。

更多Woodstox信息

 xalan 
xalan- java是一套xslt处理器,用来将XML文件转换为HTML,TEXT和XML等其他类型文件格式。支持XSLT1.0和XPATH 1.0版。开发人员可以通过命令行方式或在JAVA APPLET和SERVLET中使用,并可以作为自己开发的应用程序的类库使用。xalan-java实现的是transformation API for XML(TRaX)接口,此接口为jaxp1.2标准中的一部分。

更多xalan信息

 XmlIO 
XmlIO是一个利用SAX来解析XML然后创建Java对象并同时调用这些对象 setter 方法的框架.这个框架还能够把一张包含有单个根节点的Java对象图序列化成XML格式的字符串。

更多XmlIO信息

 VTD-XML 
VTD-XML是一种新的XML处理API,它能够克服DOM和SAX的一些问题。VTD-XML能够在内存中对XML进行快速检查并提供XPath查询支持。 在它的主页上有详细的API描述,源代码,文档和例子。

更多VTD-XML信息

 Nux 
Nux 是一个开源的Java工具,它能够让XML高效处理变得容易。Nux可嵌入到具有高吞吐量的XML消息中间件中比如:大型p2p底层结构,消息队列,发布 -订阅和Blogs/新闻聚合的matchmaking系统,分布式系统,防火墙等.Nux集成并扩展XOM,Saxon和Lucene这些优秀的开源组 件包以提供XQuery/XPath,全文本搜索等功能。

更多Nux信息

 StAX 
StAX(Streaming API for XML)是标准的XML处理API,它能够从应用程序的stream对象解析XML数据或把XML数据转换成stream对象。StAX是一个用Java实现的XML拉式解析器。

更多StAX信息

 Skaringa 
Skaringa提供一个类库实现Java object与XML文档的相互转换,并能够为Java class生成XML schema定义。

更多Skaringa信息

 X2JB 
X2JB是一个Java开发类包用于把XML映射成Java实体。实际上它与JAXB、XML Beans、Jakarta Commons Digester 等相似但没有它们复杂。X2JB使用注释(annotation)来映射XML元素和元素属性。

更多X2JB信息

 Smooks 
Smooks 用于处理XML与非XML(CSV,EDI,Java等)的一个Java框架与引擎。Smooks能够用于各种数据格式的转换:XML to XML,CSV to XML,EDI to XML,XML to EDI,XML to CSV,Java to XML,Java to EDI,Java to CSV,Java to Java,XML to Java,EDI to Java等。

更多Smooks信息

 WAX 
WAX 是一个用于创建大型XML文档的高效工具。与其它XML操作类库(如JDOM)相比,它占用的内存比较少。创建XML所需要的代码也比较少。只关注创建功 能,而没有读取/解析功能。整个类库只有12K左右。特别适合用于创建基于REST或SOAP Web Service的请求与响应信息。

更多WAX信息

 Simple framework 
Simple是一个高性的XML序列化和配置框架。它提供完整的对象序列化与反序列化功能,并能够保持它们的关联关系。Simple与C#的XML序列化相似,但增加了拦截和操作等功能。
@Root
public class Example {
   @Element
   private String text;
   @Attribute
   private int index;
   public Example() {
      super();
   }  
   public Example(String text, int index) {
      this.text = text;
      this.index = index;
   }
   public String getMessage() {
      return text;
   }
   public int getId() {
      return index;
   }
}
Serializer serializer = new Persister();
Example example = new Example("Example message", 123);
File result = new File("example.xml");
serializer.write(example, result);

更多Simple framework信息

 xmlzen 
Light-weight是一个Java工具用于解析XML和DOM构建。

更多xmlzen信息

 

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

dangelrose

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值