Digester digester = new Digester();
digester.push(this); //注册摘要的对象
digester.setNamespaceAware(true); //名字空间敏感
digester.setValidating(false); // 不校验
// Register our local copy of the DTDs that we can find , 注册DTD
for (int i = 0; i < registrations.length; i += 2) {
URL url = this.getClass().getResource(registrations[i + 1]);
if (url != null) {
digester.register(registrations[i], url.toString());
}
}
// Configure the processing rules that we need
//当pattern匹配时的调用方法
digester.addCallMethod("web-app/servlet-mapping", "addServletMapping", 2); //有几个参数
digester.addCallParam("web-app/servlet-mapping/servlet-name", 0); //frist param
digester.addCallParam("web-app/servlet-mapping/url-pattern", 1); //second param
参考:[url]http://underpersimmon.blog.51cto.com/blog/170743/27859[/url]
本文出自 “underpersimmon” 博客,请务必保留此出处http://underpersimmon.blog.51cto.com/170743/27868
本文出自 51CTO.COM技术博客
分享到:
相关推荐
Digester使用堆栈来保存xml节点(stack.push()方法),当该xml节点中嵌套的所有子节点解析完毕,该节点将被弹出(stack.pup()方法)。Digester最大的优点就是使用模式匹配来表示xml文件中节点之间的父子关系 。
- **配置文件解析**:在很多框架中,如Spring,都使用类似Digester的方式解析XML配置文件,创建和配置对象。 - **对象的自动构建**:通过XML描述, Digester可以自动生成对象树,并按照XML结构设置对象属性,极大地...
### 使用Apache Commons Digester开发指南 #### 概述 Apache Commons Digester 是一款基于 Java 的开源库,专门用于简化 XML 文件解析的过程。它利用 SAX(Simple API for XML)解析器来解析 XML 数据,并通过一...
7. **XML解析与事件驱动**: Digester使用DOM(Document Object Model)解析XML文档,但它的核心是事件驱动的,即每当遇到匹配的XML元素时,它会触发相应的Rule。 8. **使用示例**: 在实际应用中,首先你需要创建一...
1. **XML解析**:Digester使用SAX解析器处理XML文档,而不是DOM解析器,这意味着它在处理大型XML文件时内存效率更高。SAX解析器逐行读取XML,当遇到特定的元素时触发回调方法。 2. **规则匹配**:通过`addRule()`...
- **栈数据结构**: 在解析过程中,Digester使用栈来保存和检索生成的Java对象。这种方式有利于处理嵌套层次较深的XML元素。 ##### 2. 模式匹配 - Digester通过匹配模式来定位XML文件中的元素。模式匹配是一种灵活的...
4. **事件驱动**:Digester使用事件驱动模型,当匹配到XML元素时,触发相应的事件处理器(Rule)。 **三、使用Digester的基本步骤** 1. **引入依赖**:在项目中添加Apache Commons Digester的库依赖。 2. **创建...
- **XML解析**:Digester使用JAXP (Java API for XML Processing) 来解析XML文档,提取出元素和属性信息。 - **规则设定**:开发者可以通过`addRule`方法设置规则,例如当遇到特定的XML元素时,执行相应的Java方法...
2. **Rule集合**:Digester使用`Rule`对象来定义解析规则。每个`Rule`对应XML文档中的一个元素,当解析到该元素时,`Rule`就会执行相应的操作,如创建对象、设置属性或者调用方法。 3. **命名空间支持**:除了基本...
由于无法直接访问该链接,我会基于一般的Apache Commons Digester使用场景和功能进行讲解。 Apache Commons Digester是一个强大的工具,主要用途是读取XML文档,并根据预定义的一系列规则触发对Java对象的操作。...
4. **事件驱动模型**:Digester使用事件驱动的编程模型,当解析到特定的XML元素时,会触发预定义的事件处理器。 5. **集成其他Apache Commons组件**:由于是Apache Commons的一部分,Digester可以无缝集成其他...
1. "Digester笔记2.doc":可能包含了更深入的Digester使用技巧和案例,包括自定义规则和处理复杂XML结构的方法。 2. "Digester笔记.doc":基础的Digester教程,覆盖了基本的XML解析和对象绑定操作。 3. "文件合并...
下面我们将深入探讨 Digester 的核心概念、使用方法以及其在实际项目中的应用。 一、 Digester 概述 1.1 定义与功能 Digester 是 Apache Commons 中的一个模块,它的主要作用是读取XML文档,并根据预先设定的规则...
3. **解析XML**:使用 Digester 的 `parse()` 方法读取XML文件,根据预先定义的规则进行处理。 4. **结果处理**:最后,Digester会生成一个对象模型,代表了XML文档的内容。 以下是一个简单的 Digester 使用示例: ...
2. 对象堆栈(Object Stack): Digester 使用对象堆栈来保持当前处理的对象。每当遇到一个新的XML元素时, Digester 就会在堆栈顶创建一个新的对象,并将其压入堆栈。通过这种方式,可以实现父子关系的构建。 3. ...
2. **XML解析**:Digester使用了SAX(Simple API for XML)解析器,这是一种事件驱动的解析模型,它只遍历XML文档一次,对每个元素和属性触发相应的事件,而不是像DOM解析器那样将整个文档加载到内存中。这使得SAX...
使用Digester的基本步骤如下: 1. 创建一个`Digester`实例。实例化后,它可以安全地重复使用,但需要注意的是,它是非线程安全的。 2. 配置`Digester`属性,例如设置是否验证XML文档。 3. 添加处理规则,这些规则...
不错的解析XML的类,主要利用org.apache.commons.digester.Digester;
赠送jar包:commons-digester3-3.2.jar; 赠送原API文档:commons-digester3-3.2-javadoc.jar; 赠送源代码:commons-digester3-3.2-sources.jar; 赠送Maven依赖信息文件:commons-digester3-3.2.pom; 包含翻译后...