步骤简介:
1、利用DocumentBuilderFactory获得DocumentBuilder:
<!---->DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder() ;
2、由DocumentBuilder解析得到Document:
<!---->1 Document document = docBuilder.parse(new ByteArrayInputStream(xmlStr.getBytes()));
2 //Document document = docBuilder.parse(new FileInputStream(new File("fileName")));
3 //Document document = docBuilder.parse(new File("fileName"));
4 //Document document = docBuilder.parse("uri");
3、由Document获取页面内容:
3.1、由Document得到特定元素:
<!---->1 Element element = document.getElementById("elementId");
2 String attrValue = element. getAttribute("attrName");
3.2、由Document得到节点集合:
<!---->1 NodeList nodeList = document.getElementsByTagName("tagName");
2 for(int i = 0; i < nodeList.getLength(); i++){
3 String nodeValue = nodeList.item(i).getFirstChild().getNodeValue();
4 }
下面是一个实际应用的简单例子:
<!----> 1 import java.io.BufferedReader;
2 import java.io.ByteArrayInputStream;
3 import java.io.IOException;
4
5 import javax.servlet.ServletException;
6 import javax.servlet.http.HttpServlet;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9 import javax.xml.parsers.DocumentBuilderFactory;
10 import javax.xml.parsers.ParserConfigurationException;
11
12 import org.w3c.dom.Document;
13 import org.w3c.dom.NodeList;
14 import org.xml.sax.SAXException;
15
16 public class PostingXmlExample extends HttpServlet{
17
18 public void doPost(HttpServletRequest request, HttpServletResponse response)
19 throws IOException, ServletException {
20 String xml = readXmlFromRequestBody(request);
21 Document xmlDoc = null;
22 try {
23 xmlDoc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(
24 new ByteArrayInputStream(xml.getBytes()));
25 } catch (SAXException e) {
26 System.out.println("SAXException!");
27 e.printStackTrace();
28 } catch (ParserConfigurationException e) {
29 System.out.println("ParserConfigurationException!");
30 e.printStackTrace();
31 }
32 NodeList selectedPetTypes = xmlDoc.getElementsByTagName("type");
33 String type = null;
34 String responseText = "Selected Pets: ";
35 for(int i = 0; i < selectedPetTypes.getLength(); i++){
36 type = selectedPetTypes.item(i).getFirstChild().getNodeValue();
37 responseText = responseText + " " + type;
38 }
39 response.setContentType("text/xml");
40 response.getWriter().print(responseText);
41 }
42
43 private String readXmlFromRequestBody(HttpServletRequest request) {
44 StringBuffer xml = new StringBuffer();
45 String line = null;
46 try{
47 BufferedReader reader = request.getReader();
48 while((line = reader.readLine()) != null){
49 xml.append(line);
50 }
51 }catch(IOException e){
52 System.out.println("IOException!");
53 e.printStackTrace();
54 }
55 return xml.toString();
56 }
57 }
[
这里]是完整的实例程序。
分享到:
相关推荐
java dom 解析 xml 实例 介绍w3c中的元素的用法,以及在解析xml过程中用到的API进行详细解释
dom4j是一种解析XML文档的开放源代码XML框架。本文介绍如何使用包含在dom4j中的解析器创建并修改...与W3C DOM API相比,使用dom4j所包含的解析器的好处是dom4j拥有本地的XPath支持。DOM解析器不支持使用XPath选择节点。
示例源码: ...什么是 XML DOM? XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准编程接口 中立于平台和语言 W3C 标准 XML DOM 定义了所有 XML 元素...5、XMLDOM教程文档推荐参考:https://www.w3cschool.cn/xmldom
XPath 简介 XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。 在学习之前应该具备的知识: 在您继续学习之前,应该对下面的知识有基本的了解: ...• XPath 是一个 W3C 标准
建议 Level 1DOM是W3C制定的用来提供给任何程序语言来访问XML文档的。不管你用什么语言程序来处理XML文档,只要是Level 1DOM里面的方法和属性就可以。不管是Perl、VBScript还是JavaScript你都可以读取任何你
dom 解析技术是 W3C 组织制定的,而所有的编程语言都对这个解析技术使用了自己语言的特点进行实现。 Java 对 dom 技术解析标记也做了实现。 sun 公司在 JDK5 版本对 dom 解析技术进行升级:SAX( Simple API for ...
使用DOM4J解析xml的jar包和W3CSchool.chm的文档包含XPath的教程
XML DOM 教程xml DOM 文档对象模型 会为了一下以前课本上的 对比了一下w3c的 还是原版的好
W3C DOM Activities 文档对象模型 (DOM:Document Object Model) 是一个平台,一个中立于语言的应用程序编程接口 (API),允许程序访问并更改文档的内容、结构和样式。 DOM Tutorials 如需学习更多有关 DOM 的知识...
DOM (Document Object Model, 即文档对象模型) 是 W3C 组织推荐的处理 XML 的标准接口, DOM采用建立树形结构的方式访问XML文档. SAX(Simple API for XML) 不是某个官方标准,但它是 XML 社区事实上的标准,几乎所有的...
dom是W3C规范,比较典型的JAVA操作XML方式,适用于小型文件。 dom4j是开源的性能以及效率最好的,也是一个典型例子。 本源码下下来运行test.java直接运行。 其中包括:采用dom写xml 以及dom方式读XML 采用dom4j写xml...
它是org.w3c.dom包的简单包装,可以在需要DOM但又太冗长的地方实现流畅的XML文档创建和操作。 jOOX仅包装基础文档,并且可以用于增强DOM,而不能作为替代方案。 jOOX的流畅性受到启发, 是一种非常好的流利的API,...
W3C国际标准组织设计XML文档的目标是方便的存储和交换小型数据包,而不考虑数据的冗余。因此若实际系统中出现巨大的XML文档,则大多数情况下可以认为是不恰当的使用XML技术。因此我认为报表工具不应当处理巨大的XML...
目 录 译者序 作者简介 前言 第1章 XML简介 1.1 标记语言 1.2 XML的起源和目的 1.3 Web体系结构:过去与未来 1.3.1 传统Web体系结构 1.3.2 XML下的Web体系结构 ...9.5 使用DOM进行XML文档的转换
生成XML文件ABAP程序 REPORT zams_xml_dom_create . TYPE-POOLS: ixml. CLASS cl_ixml DEFINITION LOAD. TYPES: BEGIN OF xml_line, data(256) TYPE x, END OF xml_line. DATA: l_ixml TYPE REF TO if_ixml, ...
W3C School是一家专门提供Web技术在线教程的网站。网站中提供了大量全面的Web开发相关手册、实例。这里要提供给大家的就是由该网站内容整理的CHM手册——离线版的W3C School网站,方便大家在Web开发时使用。 该手册...
W3School 为您提供完整的 XML DOM 参考手册,其中包括所有的 XML DOM 对象以及它们的属性和方法。 在对象的属性及方法的描述页面中,提供了关于属性和方法的详细信息,包括定义用法、语法,以及实例代码。 此外,...
dom4j基础入门文档,与 W3C DOM API 相比,使用 dom4j 所包含的解析器的好处是 dom4j 拥有本地的 XPath 支持。
本文整理了一些用于处理及遍历XML文档的DOM元素属性与方法及动态创建内容时所用的W3C DOM属性和方法,有需求的朋友可以参考下,希望对大家有所帮助
DOM是Document Object Model(文档对象模型)的简称,是对XML文档进行应用开发、编程的应用... DOM采用对象模型和一系列的接口来描述XML文档的内容和结构,即利用对象把文档模型化。这种对象模型实现的基本功能包括: