Java web xml文件读取解析方式

其实解析xml文件有四种方式:DOM,JDOM,DOM4J,SAX。

我们来说与平台无关的两种官方解析方式:DOM 和 SAX

一、DOM 解析

在 Java 代码中,xml 文件是标记型文档,这时用 dom 来解析 xml 文件 dom 会根据 html 的层级结构在内存中分配一个树形结构,把html的标签,属性和文本都封装成对象

DOM 解析步骤:
1、使用 newInstance 方法,创建一个 DocumentBuilderFactory 的对象。

2、创建一个 DocumentBuilde r对象,通过 DocumentBuilder 的对象的 parse[]

方法加载 xml 文件到当前项目下,如:

DocumentBuilder db=dbf.newDocumentBuilder();

Document document=db.parse(uri);

3、获取 xml 文件

NodeList booklist = document.getElementsByTagName(节点名称);

4、用foreach方法进行遍历

5、解析子节点

NodeList childnode=book.getChildNodes();可用childnode.item(k).getNodeType()==Node.ELEMENT_NODE这个方法进行判断以区分text类型的node以及element类型的node。

DOM 解析的优点:可以很方便实现增删改的功能

缺点:如果文件过大,造成内存溢出

二、SAX 解析

在 Java 中,SAX 解析采用事件驱动,边读边解析,从上到下,一行一行的解析,解析到某一个对象,返回对象名称。而且当SAX解析结束,不会保存任何XML文档的数据。

SAX 解析步骤:

1、创建一个 SAXParserFactory 对象。

SAXParserFactory factory = SAXParserFactory.newInstance();

2、创建一个 SAXParser 对象通过 parse 方法加载 xml 文件。

SAXParser parser = factory.newSAXParser();

这时与DOM的区别是这里需要一个 handler,此时需要创建一个 handler 类。

3、handler 类需要继承 DefaultHandler。

SAX 解析的优点:如果文件过大,不会造成内存溢出,方便实现查询操作;
缺点:不能实现增删改操作;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java访问WebService返回XML数据的方法

    本文实例讲述了Java访问WebService返回XML数据的方法.分享给大家供大家参考.具体如下: import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import java.io.FileNotFoundException; import java.io

  • Java解析调用webservice服务的返回XML串详解

    本文由Markdown语法编辑器编辑完成. 1. 需求分析: 已知当在调用某一webservice的服务时,如果调用成功,会接受到该服务的返回XML串.后端在获取了该XML原始串时,需要进行解析,将其解析为JSON格式,以便于发送到前台,供前台页面显示和交互. 2. 解决方案: 该XML的原始形式为: <?xml version="1.0" encoding="UTF-8" ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=

  • web.xml详解_动力节点Java学院整理

    一.            Web.xml详解: (一)  web.xml加载过程(步骤) 首先简单说一下,web.xml的加载过程. 当我们去启动一个WEB项目时,容器包括(JBoss.Tomcat等)首先会读取项目web.xml配置文件里的配置,当这一步骤没有出错并且完成之后,项目才能正常地被启动起来.   启动WEB项目的时候,容器首先会去它的配置文件web.xml读取两个节点: <listener></listener>和<context-param><

  • 浅谈JavaWeb中的web.xml配置部署描述符文件

    1. 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码. DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义). 所有部署描述符文件的顶层(根)元素为web-app.请注意,XML元素不像HTML,他们是大小写敏感的.因此,web-App和WEB-APP

  • web.xml中servlet, bean, filter, listenr 加载顺序_动力节点Java学院整理

    web.xml 文件中一般包括 servlet, spring, filter, listenr的配置.那么他们是按照一个什么顺序加载呢?加载顺序会影响对spring bean 的调用. 比如filter需要用到 bean ,但是加载顺序是 先加载filter 后加载spring,则filter中初始化操作中的bean为null:首先可以肯定 加载顺序与他们在web.xml 文件中的先后顺序无关. web.xml 中 listener 和 serverlet 的加载顺序为 先 listener

  • JavaWeb中web.xml初始化加载顺序详解

    需求说明 做项目时,为了省事,起初把初始化的配置都放在每个类中 static加载,初始化配置一多,就想把它给整理一下,这里使用servlet中的init方法初始化. web.xml说明 首先了解下web.xml中元素的加载顺序: 启动web项目后,web容器首先回去找web.xml文件,读取这个文件 容器会创建一个 ServletContext ( servlet 上下文),整个 web 项目的所有部分都将共享这个上下文 容器将 转换为键值对,并交给 servletContext 容器创建 中的

  • JavaWeb工程web.xml基本配置过程解析

    这篇文章主要介绍了JavaWeb工程web.xml基本配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.理论准备 先说下我记得xml规则,必须有且只有一个根节点,大小写敏感,标签不嵌套,必须配对. web.xml是不是必须的呢?不是的,只要你不用到里面的配置信息就好了,不过在大型web工程下使用该文件是很方便的,若是没有也会很复杂. 那么web.xml能做的所有事情都有那些?其实,web.xml的模式(Schema)文件中定义了多

  • Java web xml文件读取解析方式

    其实解析xml文件有四种方式:DOM,JDOM,DOM4J,SAX. 我们来说与平台无关的两种官方解析方式:DOM 和 SAX 一.DOM 解析 在 Java 代码中,xml 文件是标记型文档,这时用 dom 来解析 xml 文件 dom 会根据 html 的层级结构在内存中分配一个树形结构,把html的标签,属性和文本都封装成对象 DOM 解析步骤: 1.使用 newInstance 方法,创建一个 DocumentBuilderFactory 的对象. 2.创建一个 DocumentBuil

  • Java持久化XML文件配置解析

    目录 选择一个格式 XML 基础 创建一个示例配置文件 使用 Java 解析 XML 使用 Java 访问 XML 的值 使用 Java 更新 XML 如何保证配置不出问题 在你使用 Java 编写软件时实现持久化配置. 当你编写一个应用时,你通常都会希望用户能够定制化他们和应用交互的方式,以及应用与系统进行交互的方式.这种方式通常被称为 “偏好preference” 或者 “设置setting”,它们被保存在一个 “偏好文件” 或者 “配置文件” 中,有时也直接简称为 “配置config”.配

  • 基于Java实现XML文件的解析与更新

    目录 选择一个格式 XML 基础 创建一个示例配置文件 使用 Java 解析 XML 使用 Java 访问 XML 的值 使用 Java 更新 XML 如何保证配置不出问题 在你使用 Java 编写软件时实现持久化配置. 当你编写一个应用时,你通常都会希望用户能够定制化他们和应用交互的方式,以及应用与系统进行交互的方式.这种方式通常被称为 “偏好preference” 或者 “设置setting”,它们被保存在一个 “偏好文件” 或者 “配置文件” 中,有时也直接简称为 “配置config”.配

  • java对XML文件的解析、节点的增加、删除操作总结

    1.java代码: 主要采用dom来进行操作 复制代码 代码如下: package test; import java.io.IOException; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.T

  • Java基于正则表达式实现xml文件的解析功能详解

    本文实例讲述了Java基于正则表达式实现xml文件的解析功能.分享给大家供大家参考,具体如下: 这是我通过正则表达式实现的xml文件解析工具,有些XHTML文件中包含特殊符号,暂时还无法正常使用. 设计思路:常见的xml文件都是单根树结构,工具的目的是通过递归的方式将整个文档树装载进一个Node对象.xml文档树上的每一个节点都能看做一个Node对象,它拥有title.attribute和text三个自身变量以及一个childrenNode集合用来存放子节点,使用正则表达式完整装载. 一.编写N

  • python读取xml文件方法解析

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xml? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. abc.xml <?xml version="1.0" encoding="utf-8"?> <catalog> <maxid

  • Java中使用DOM4J生成xml文件并解析xml文件的操作

    目录 一.前言 二.准备依赖 三.生成xml文件生成标准展示 四.解析xml文件 五.总结 一.前言 现在有不少需求,是需要我们解析xml文件中的数据,然后导入到数据库中,当然解析xml文件也有好多种方法,小编觉得还是DOM4J用的最多最广泛也最好理解的吧.小编也是最近需求里遇到了,就来整理一下自己的理解,只适合刚刚学习的,一起理解!今天我们把解析xml文件和生成xml文件在一起来展示. 二.准备依赖 <dependency> <groupId>dom4j</groupId&

  • SpringMVC xml文件路径在web.xml中的配置方式

    目录 SpringMVC xml文件路径在web.xml中的配置 SpringMVC 修改配置文件路径 1.1.Classpath 1.2.Classpath* 1.3.Classpath是什么 1.4.Classpath和classpath*的区别 SpringMVC xml文件路径在web.xml中的配置 正常情况下springmvc的xml文件应放在WEB-INF下,命名规则为[name]-servlet.xml, "-servlet"这个字段是必不可少的 [name]你可以随便

  • Java Web开发入门书籍实例解析(总结一)

    从事Java Web开发这一段时间来,对Java 面向对象的思想和MVC开发模式可以说已经熟悉了.我当前参与的项目使用的框架是Spring.SpringMVC.Hibernate.下面我们小编给大家整理一篇教程帮助大家学习javaweb相关知识,感兴趣的朋友可以参考下. 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 1.静态web资源(如html 页面):指w

  • android编程之xml文件读取和写入方法

    本文实例讲述了android编程之xml文件读取和写入方法.分享给大家供大家参考.具体分析如下: 一.环境: 主机:WIN8 开发环境:Eclipse 二.说明: 1.打开sd卡中的xml文件,如果不存在,这新建一个,并写入默认配置 2.读取xml文件 三.xml文件格式: <?xml version="1.0" encoding="UTF-8" standalone="true"?> -<config> <titl

随机推荐