`
alanwu
  • 浏览: 200457 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Tomcat中xml的解析器Digester 第三篇(共三篇)

阅读更多
这篇研究Tomcat自己实现的Rule, 具体分析LifecycleListenerRule和典型的Rule调用。

1。Tomcat实现的Rule:


大部分都在org.apache.catalina.startup包下, 可见这些Rule在启动的时候占举足轻重的作用。

2. 分析LifecycleListenerRule。
LifecycleListener是tomcat自定义的容器事件框架,所以它在容器中有广泛的用途和可以非常灵活的配置。

关键的begin方法:

1 利用className创建一个实例;
2 向下转型至LifecycleListener
3 将lifecycleListener利用addLifecycleListener放到栈顶的对象中。

    /**
     * Handle the beginning of an XML element.
     *
     * @param attributes The attributes of this element
     *
     * @exception Exception if a processing error occurs
     */
    public void begin(String namespace, String name, Attributes attributes)
        throws Exception {

        // Instantiate a new LifecyleListener implementation object
        String className = listenerClass;
        if (attributeName != null) {
            String value = attributes.getValue(attributeName);
            if (value != null)
                className = value;
        }
        Class clazz = Class.forName(className);
        LifecycleListener listener =
            (LifecycleListener) clazz.newInstance();

        // Add this LifecycleListener to our associated component
        Lifecycle lifecycle = (Lifecycle) digester.peek();
        lifecycle.addLifecycleListener(listener);

    }


3 org.apache.catalina.startup.Catalina中的使用
Catalina在load的时候调用createStartDigester组建Digester, 定义Catalina对应的配置XML和对象初始化的映射关系。

通过分析Catalina的 createStartDigester, 可以清楚地看到配置文件XML中各个属性对应的对象实现中的属性, 能更加深刻的理解Tomcat的配置。

  • 描述: Tomcat实现的Rule:
  • 大小: 69.9 KB
分享到:
评论

相关推荐

    利用commons-digester解析xml

    标题“利用commons-digester解析XML”涉及到的是Java开发中的一种处理XML文档的工具——Apache Commons Digester。这个库提供了一种方便的方式来映射XML文档结构到Java对象,从而简化了XML数据的处理过程。 Apache ...

    Java_XML解析之Digester的使用

    Java XML解析中的Digester是一个强大的工具,用于将XML文档转换为Java对象。它最初是为了处理Struts框架的配置文件而设计的,随着时间的发展,它成为一个轻量级且高效的框架,专注于单向转换,即从XML到Java对象。...

    Tomcat7启动分析(三)Digester的使用

    在Tomcat7的启动过程中,涉及到很多内部组件的初始化,其中`Digester`是一个重要的工具,用于解析XML配置文件,将XML结构映射为Java对象。本篇文章将深入剖析`Digester`的使用以及它在Tomcat7启动过程中的作用。 `...

    Digester java解析xml

    Java中的Digester库是Apache Commons项目的一部分,它提供了一种方便的方式来解析XML文档,并将解析结果映射到Java对象模型上。这个库特别适合于创建简单的XML到Java对象的映射,而不需要编写大量的手动解析代码。在...

    digester解析xml的问题.pdf

    Digester 是 Apache Commons 中的一个工具类库,它用于解析 XML 文档,并根据预先定义的规则自动创建和配置 Java 对象。在上述问题中,我们看到一个 XML 文档表示了一个考试,其中包含了多个题目,每个题目有其编号...

    使用Apache的Digester来解析XML文档

    Apache Digester是一个强大的Java库,专门用于将XML文档解析成对象模型。在处理XML到Java对象映射时,它提供了一种简洁的方式,避免了手动编写大量繁琐的XML解析代码。这个工具尤其适用于那些需要频繁从XML配置文件...

    xml解析commons-digester的demo

    Apache Commons Digester是Java中一个强大的工具,它提供了方便的方式来解析XML文档,并将解析出的数据绑定到Java对象上,实现对象的自动创建和初始化。本示例将详细介绍如何使用Apache Commons Digester进行XML解析...

    Digester解析XML

    **Digester** 是Apache Commons项目中的一个子项目,主要用于简化XML文档的解析工作。它建立在SAX的基础之上,通过定义一系列的模式(Pattern)和规则(Rule),能够有效地处理复杂的XML结构,从而简化开发者的编程...

    使用Digester解析XML文档示例

    ### 使用Digester解析XML文档示例 #### 一、Digester简介与应用场景 ...通过本篇示例的学习,读者可以了解到Digester的基本使用方法及其在实际开发中的应用,从而更好地利用这一工具解决XML解析问题。

    digester解析xml必备包.rar

    2. **设置解析器**:将XML解析器(如SAXParser)与Digester关联,以便在解析XML时触发已设定的规则。 3. **解析XML**:使用`parse`方法,传入XML文件的输入流,开始解析过程。 4. **处理结果**:解析完成后,根...

    XML的解析之——使用Digester

    本文将深入探讨如何使用Apache的 Digester 库来解析XML文档,这是一款强大的工具,能够将XML数据映射到Java对象,简化了处理XML的过程。 Digester 是Apache Commons项目的一部分,它提供了一种规则驱动的方法来处理...

    Digester解析XML的小例子(对象嵌套)

    Digester是一个规则驱动的XML解析器,它通过匹配XML元素路径来执行相应的Java方法,从而实现XML到Java对象的映射。这种映射过程通常称为“规则”。规则可以是创建新对象、设置属性值、调用方法等。 对于嵌套的对象...

    Digester解析XML文件

    本文将深入探讨如何使用Digester解析XML文件,以及在实际项目中如何应用。 首先,让我们了解什么是Apache Commons Digester。这是一个Java库,它的主要功能是读取XML文件,并基于一系列预先定义的规则(Rule),...

    使用digester解析XML

    不错的解析XML的类,主要利用org.apache.commons.digester.Digester;

    使用digester配置rule.xml规则来解析自定义的xml文件-代码

    本篇文章将深入探讨如何使用Digester和`rule.xml`配置文件来解析自定义的XML文件。 首先,让我们了解什么是Apache Digester。Digester是一个开源库,它提供了从XML到Java对象的映射功能。通过定义一系列的“消化...

    digester解析xml

    《digester解析XML详解》 在Java开发中,XML作为一种数据交换格式,广泛应用于配置文件、数据传输等场景。为了方便地将XML文档解析为Java对象,Apache组织提供了一个名为Digester的工具库,它允许开发者通过规则来...

    Digester读取XML学习

    本篇文章将深入探讨如何使用Digester进行XML解析,并提供相关的学习资源。 【描述】:“Digester读取XML学习” Digester的使用基于一系列预定义或自定义的规则,这些规则决定了XML文档的元素与Java对象之间的映射...

    digester解析xml 所需jar包

    本篇文章将详细介绍如何使用`Digester`解析XML,以及在使用过程中需要的依赖库。 首先,`Digester`的核心功能是通过定义规则来将XML元素与Java对象的属性或方法关联,这样在解析XML时,可以自动创建和填充Java对象...

    org.apache.commons.digester解析XML.rar

    - **对象创建与填充**:在解析过程中,遇到匹配的XML元素时, Digester会根据规则创建新的Java对象,并将其添加到当前对象模型中,或者调用已存在对象的方法来处理数据。 3. **主要类和方法** - **Digester类**:...

Global site tag (gtag.js) - Google Analytics