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

JAVA-XML应用学习(1)

    博客分类:
  • JAVA
阅读更多

这天几做了一些有关XML的应用,如从数据库取出数据以XML格式为FLASH提供数据源,以及以XML为基础的接口应用,主要还是用它来保存数据、传输数据。

如今JAVA中XML API大概有4种,DOM、SAX、JDOM、DOM4J,不过应用最多的算是DOM4J,性能最好。它是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的Java软件都在使用DOM4J来读写XML,特别值得一提的是连Sun的JAXM也在用DOM4J.

如下是一个DOM4J的小实例:

package com.dujiali.test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

public class XMLTest {
	
	public String makeXml()
	{
		Document doc = DocumentHelper.createDocument();
		doc.setXMLEncoding("GBK");	//设置XML文件编码格式
		Element root = doc.addElement("info");
		Element element;
		element = root.addElement("user").addAttribute("username", "leign")
		.addAttribute("password", "testpass")
		.addElement("userInfo");
		element.addElement("性别").addText("男")
		.addAttribute("年龄", "22");
		
		String xmlStr = doc.asXML();
		
		System.out.println("xml===="+xmlStr);
		
		return xmlStr;
	}
	
	public Element getElemntByParseText(String xmlStr)
	{
		Element element = null;
		Document doc;
		try {
			//解析XML内容
			doc = DocumentHelper.parseText(xmlStr);
			Element root = doc.getRootElement();
			
			//获得指定元素
			element = root.element("user");
			System.out.println("element===="+element);
			
			//遍历
			List elementList = root.elements();
			if(elementList!=null && elementList.size()>0){
				int i=0,len=elementList.size();
				while(i<len){
					element = (Element)elementList.get(i);
					System.out.println("element===="+element);	
					i++;
				}
			}
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return element;
	}
	
	public void makeFile(String content)
	{
		try {
			File xmlFile = new File("D:\\testXml.xml");
			FileOutputStream fout = new FileOutputStream(xmlFile);
			if(content!=null)
				fout.write(content.getBytes());
			fout.flush();
			fout.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	public static void main(String[] args)
	{
		XMLTest xmltest = new XMLTest();
		String xmlContent = xmltest.makeXml();
		xmltest.makeFile(xmlContent);
		System.out.println(""+xmltest.getElemntByParseText(xmlContent));
	}
}


生成的XML文件,可根据内容区别addElemnt()与addAttribute()的区别
<?xml version="1.0" encoding="GBK"?>
<info>
	<user username="leign" password="testpass">
		<userInfo>
			<性别 年龄="22">男</性别>
		</userInfo>
	</user>
</info>


说到XML与其他文件格式的转换,比较常见的有Excel、HTML、DOC等,其实Excel、WORD这些OFFICE文件本身就可以另存为XML格式,只是比一般的XML多了一些格式样式,且Excel可以自己识别它所转化的XML文件。网上也有很多XML文件转换器,有兴趣的朋友可以深入了解一下。
1
0
分享到:
评论

相关推荐

    Java and XML, 3rd Edition

    包括StAX的工厂方法(factory)、文档生成和XMLPull *使用JAXB进行数据绑定,使用新的JAXB 2.0 annotation *使用RSS进行网络同步和podcasting *表示层的XML应用,主要针对Ajax和Flash应用程序 无论您...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JAVA与XML.rar

    包括核心接口和XPath支持 StAX应用程序编程接口,包括StAX的工厂方法(factory)、文档生成和XMLPull 使用JAXB进行数据绑定,使用新的JAXB 2.0 annotation 使用RSS进行网络同步和podcasting 表示层的XML应用,...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。首先有两点是需要肯定的:  第一:XML肯定是未来的...

    jsp,xml,java之间的应用之道

    主要介绍java xml jsp 基础知识,及他们之间应用学习之道。适合有一定基础的朋友学习交流

    Java与XML数据库整合应用10

    Java与XML数据库整合应用10 是学习XML的好帮手

    SSM框架的学习与应用-Java EE企业级应用开发学习记录(第五天)MyBatis的注解开发

    SSM框架的学习与应用-MyBatis的注解开发实例 1.包含以下项目所需要的架包,junit-4.7 log4j-1.2.16 mybatis-3.2.2-sources mybatis-3.3.0 mysql-connector-java-5.1.0-bin mysql-connector-java-8.0.26 2.使用了Dao....

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    java反编译class源码-java-n-IDE-for-Android:java-n-IDE-for-Android

    这个项目是为了帮助社区在android上学习java而开发的。 您可以使用 JDK 1.7 构建和运行 Java 文件。 在 Google Play 商店下载 去做 Java 编译器 JDK 1.7 :check_mark: Java编辑器 :check_mark: Java自动完成代码 :...

    JAVA学习的参考学习流程

    教会如何从零开始学习java 表(1) 面授课程技术 NO. 类别 01 操作系统 Windows --&gt; Linux 02 中间件 Tomcat --&gt; JBoss 03 数据库 MySQL --&gt; Oracle 04 JAVA SE 环境搭建 --&gt; 基础程序 --&gt; 面向对象 --&gt; 应用开发 ...

    java源码包---java 源码 大量 实例

     一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一...

    xml.rar_XML java_java xml_xml

    关于JAVA中的XML编程,希望对正在或想要学习XML编程的有所帮助。在XML应用中,最常用也最实用的莫过于XML文件的读写,所以通过一个简单的XML文件读写来作简要分析

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    XML简介及应用-PPT

    XML简介及应用-PPT 这是一套相当完善的XML学习的文档资料 PPT格式,适合阅读 学习json的前提必须要学习好XML

    WEB11-XML.rar-源代码

    1,能够理解 XML 语言的概述 a, 说出 XML 语言的概念 b, 说出 XML 语言的作用 c, 说出 XML 语言的应用场景 2,能够使用 XML 文档的文档声明 a, 写出文档声明的 version 属性 b, 写出文档声明的 encoding 属性...

    Java程序设计EJB、XML与数据库

    Java程序设计EJB、XML与数据库 关于Java程序设计 EJB XML 数据库 的学习,资料很全面的

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    Java Web开发详解:XML+DTD+XML Schema+XSLT+Servlet3.0+JSP2.2深入剖析与实例应用/孙鑫编著

    《Java Web开发详解——XML+DTD+XML Schema+XSLT+Servlet3.0+JSP2.2深入剖析与实例应用》不仅可以作为Java Web开发的学习用书,还可以作为从事Java Web开发的程序员的参考用书和必备手册。 此外,《Java Web开发详解...

    java解析xml及4种常用解析比较

    JDOM对于大多数Java/XML应用程序来说当然是有用的,并且大多数开发者发现API比DOM容易理解得多。JDOM还包括对程序行为的相当广泛检查以防止用户做任何在XML中无意义的事。然而,它仍需要您充分理解XML以便做一些超出...

    免费下载:自己整理的java学习资料

    自己整理的一些资料,不...设计模式:Java语言中的应用.pdf JAVA思想.pdf JAVA6.0API_CN.CHM Java常见问题.pdf Java数据结构和算法中文第二版.pdf Java网络高级编程.pdf jsp高级运用 spring2中文开发参考手册.chm a.txt

Global site tag (gtag.js) - Google Analytics