`
cn_arthurs
  • 浏览: 327098 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

高效创建XML工具(WAX)

阅读更多

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

http://java.ociweb.com/mark/programming/WAX.html

 

下面是使用WAX和使用Dom4j的代码对比

/**
	 * 使用WAX创建简单xml
	 */
	public static void createXMLbyWa(){
		long start = System.currentTimeMillis();
		WAX wax = new WAX("e:/waxy.xml",Version.V1_0);
		//生成根节点
		wax.start("InterBOSS");
		//生成子节点
		wax.child("OrigDomain", "BOSS");
		//生成包含子节点
		wax.start("Routing")
		   .child("RouteType", "00")
		   .child("RouteValue", "000");
		String temp = "";
		wax.start("SvcCont").cdata(temp);
		//结束,生成xml文件
		wax.close();
		long end = System.currentTimeMillis();
		System.out.println("waxy 运行时长 : "+(end-start));
	}

 

 

/**
	 * 使用DOM4J创建一个简单XML
	 * @throws IOException
	 */
	public static void createSampleXML()throws IOException {
		long start = System.currentTimeMillis();
		/**//* 创建Document */
		Document doc = DocumentHelper.createDocument();
		OutputFormat format = OutputFormat.createPrettyPrint();/**//* 美化格式的输出 */
		// OutputFormat format = OutputFormat.createCompactFormat();/*
		// 压缩格式的输出,节省空间 */
		format.setEncoding("utf-8");/**//* xml的编码 */
		Element rootNode = DocumentHelper.createElement("InterBOSS");
		doc.add(rootNode);
		rootNode.addElement("OrigDomain").
		addAttribute("type","varchar").
		addAttribute("length","50").
//		n1.attribute("length").setValue("50");
		addText("BOSS");
		
		rootNode.addElement("Routing")
		.addElement("RouteType").addText("00")
		.addElement("RouteValue").addText("000")
		.addElement("SvcCont").addCDATA(" ");
		XMLWriter writer = new XMLWriter(new FileWriter("e:/dom4j.xml"), format);
		writer.write(doc);
		writer.close();/**//* 必写无疑 */
		long end = System.currentTimeMillis();
		System.out.println("dom4j 运行时长 : "+(end-start));
	}

 

经测试,使用dom4j生成xml的平均时长时62毫秒,使用wax生成xml的平均时长时47毫秒

 

总结,WAX生成XML的代码更简单,如果你是只需要创建XML文件,无疑WAX是个很好的选择

 

0
0
分享到:
评论

相关推荐

    Lua_wax在ios上的应用.pptx

    《Lua_wax在iOS上的应用详解》 ...总之,Lua_wax的结合为iOS应用开发提供了一种灵活高效的解决方案,尽管存在一些挑战,但通过不断优化和改进,可以充分利用Lua的灵活性和Wax的便利性,打造出色的应用程序。

    ios wax demo

    - Wax是一个开源项目,由Jasonette团队创建,它允许开发者用Lua语言来编写iOS应用的业务逻辑,而界面和交互仍然通过Objective-C或Swift实现。 - Wax的核心理念是将复杂的Objective-C代码转化为易于理解和维护的Lua...

    iphone wax source code

    iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.iphone wax源码.

    DB-WAX气相色谱

    DB-WaxFF 是具有很高重现性的微径柱,是针对香料分析进行过特别测试的DB-Wax相似的固定相. 方便你的查询。

    基于wax+lua的IOS插件开发.zip

    7. **调试与性能**:由于Lua是解释型语言,它的调试相对简单,可以利用WAX提供的工具进行断点调试。然而,要注意的是,虽然Lua代码编写快速,但相比原生Objective-C,其性能可能稍逊一筹,尤其是在大量计算或频繁...

    WAX安全浏览器 WAX浏览器 v2.0

    总的来说,WAX安全浏览器v2.0凭借其简洁的设计、轻快的性能、强大的安全保护和高度的用户定制性,成为了一款值得信赖的互联网浏览工具。无论是日常上网还是工作学习,它都能为用户提供一个安全、高效且舒适的网络...

    Wax-开源

    Wax 的目标是简化 wxPython 的使用,让开发者能够更高效地创建桌面应用程序,同时保持与 wxPython 兼容的全部功能。 **Pythonic 的编程风格** 在 Wax 中,开发者可以利用 Python 的简洁性和表达力来设计 GUI 界面...

    swift-Wax用Lua开发原生iPhoneApp的框架

    Swift-Wax的实现依赖于Cocoa Touch,它是Apple iOS SDK的一部分,提供了创建用户界面和处理用户交互的基本工具。通过Wax,开发者可以用Lua编写事件处理器、数据模型和视图控制器,然后通过桥接机制与Swift代码交互,...

    waxy:WAX - 一种编写 XML 的新方法

    WAX 是一种编写 XML 的新方法 专注于编写 XML,而不是阅读它 比其他方法需要更少的代码 比其他方法使用更少的内存(因为它在调用每个方法时输出 XML,而不是将其存储在类似 DOM 的结构中并稍后输出) 不依赖于标准 ...

    wax.rar_V2

    总的来说,WAX设备驱动程序V2.13.6是Linux系统中实现WAX设备功能的关键组件,它的存在使得Linux能够更好地支持和利用这种硬件,提供高效、稳定的服务。无论是开发者还是使用者,都需要对其有深入的理解,才能充分...

    一通电话也不行 WAX(赵惠丽)

    一通电话也不行韩语歌词,lrc格式~~~~~ [ti:一通电话也没有] [ar:WAX] [al:一通电话也没有] [by:匿名] [00:00.00]WAX - 一通电话也没有 [00:00.01] [00:00.02] 전화 한 번 못하니 / 벌써 날 잊어 버렸니 ……

    WAX安全卫士 v2.01.zip

    WAX安全卫士是一款全新出品的简单可信赖的系统工具软件,集合了电脑加速、系统清理、木马查杀和软件管理功能,竭力为用户提供轻巧、快速、智能、纯净的产品体验 WAX安全卫士功能介绍 WAX XP盾甲 补天·加固·...

    wax-开源

    WAX 的核心理念是提供一套强大的工具集,帮助开发者创建功能丰富的、响应式的用户界面,同时保持代码的简洁和可扩展性。 **一、WAX 框架的核心特性** 1. **模块化设计**:WAX 采用模块化架构,允许开发者按需选择...

    wax-源码.rar

    wax-源码.rar

    wax_stdlib_x64:创建wax_stdlib x32-x64

    根据compile-stdlib来创建wax_stdlib.h wax的lua版本为5.1.4,编译并安装lua 终端执行compile-stdlib.sh即可在当前文件夹生成wax_stdlib.h 如需修改32 bit,修改luac.lua: local bits = 64 --or 32

    Wax CMS-开源

    "Wax CMS"是一个开源的内容管理系统,它以简单和轻便为设计原则,旨在帮助用户在自己的服务器上方便快捷地管理网站内容。作为一个平面文件系统,Wax CMS 不依赖数据库,而是将内容存储在文件中,这使得安装和维护变...

    920798805848115wax-1.1.6.apk

    920798805848115wax-1.1.6.apk

    mustache-wax:Wax是Mustache.js的扩展,它可以在类似Angular过滤器的样式中使用Mustache表达式内的格式化程序

    小胡子蜡 Wax是Mustache.js的扩展,它可以在类似Angular过滤器的样式中使用Mustache表达式内的格式化程序。 此扩展要求存在String.prototype.trim()方法,您可以从获取Polyfill:安装npm install @jvitela/...

    wax:蜡是平庸的模糊测试工具,我正在测试一些想法并摆脱其他想法

    Go是一种静态类型的、编译型的、并发的、垃圾回收的编程语言,以其简洁的语法、高效的性能和内置的并发支持而受到许多开发者喜爱,特别是对于系统工具和服务器软件开发。模糊测试工具选择Go语言可能是看中其在处理...

Global site tag (gtag.js) - Google Analytics