`
xiuxian1
  • 浏览: 94121 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论

Digester的XML规则文件配置

阅读更多
   在Digester中提供了一个包:org.apache.commons.digester.xmlrules。这个包中的类可以从一个XML文档中读取并返回一个指定的配置信息。XML文档配置文件必须使用DTD,这是xmlrules包的一部分。


下面是一个在这们例子中使用的XML规则的配置文件rules.xml。在看这个文件之前,我将有几点说明。
   
    模式可以由两种不同的方式指定:一种是每一个XML结点属性描述一个规则,或使用<pattern>结点。这些被定义的模式对于所有的规则结点都是可用的。这两种方式可以混合使用,并且<pattern>结点可以嵌套。在这种情况下,被子结点定义的pattern被加到<pattern>结点之后。
    <alias>结点用来和<set-propeties-rule>一起使用来将XML结点的属性映射成Bean的属性。下面是rules.xml的代码:


<?xml version="1.0"?>
<digester-rules>
   <object-create-rule pattern="catalog" classname="Catalog" />
   <set-properties-rule pattern="catalog" >
      <alias attr-name="library" prop-name="library" />
   </set-properties-rule>
   <pattern value="catalog/book">
      <object-create-rule classname="Book" />
      <call-method-rule pattern="author" methodname="setAuthor"
                    paramcount="0" />
      <call-method-rule pattern="title" methodname="setTitle"
paramcount="0" />
      <set-next-rule methodname="addBook" />
   </pattern>
   <pattern value="catalog/magazine">
      <object-create-rule classname="Magazine" />
      <call-method-rule pattern="name" methodname="setName" paramcount="0" />
      <pattern value="article">
         <object-create-rule classname="Article" />
         <set-properties-rule>
            <alias attr-name="page" prop-name="page" />
         </set-properties-rule>
<call-method-rule pattern="headline" methodname="setHeadline"
paramcount="0" />
         <set-next-rule methodname="addArticle" />
      </pattern>
      <set-next-rule methodname="addMagazine" />
</pattern>
</digester-rules>
分享到:
评论

相关推荐

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

    `rule.xml`文件是配置 Digester 的核心,它定义了针对XML结构的规则。在`rule.xml`中,我们可以声明规则来匹配XML中的元素,并关联相应的处理动作。例如,如果XML文件有如下的结构: ```xml &lt;element2&gt;content2...

    Digester解析XML文件

    Config.java可能包含了一些关于 Digester 规则的配置,比如使用`addRuleSet()`或`addRule()`方法来定义当XML元素匹配时执行的Java操作。Students.java和Student.java则分别表示学生列表和单个学生的Java类。它们可能...

    digester解析XML文件实例

    通过 Digester 的规则,XML文件的层级结构可以被转化为Java对象树。 5. **处理结果**:解析完成后,Java对象树已经构建完毕,你可以通过对象的引用来访问和操作数据。 在提供的"jiexi"文件中,应该包含了具体的...

    Digester解析XML

    要使用Digester解析XML文档,首先需要创建一个 `org.apache.commons.digester.Digester` 类的实例,并配置必要的模式和规则,最后调用 `parse()` 方法。 以下是一个简单的示例代码: ```java import org.apache....

    利用commons-digester解析xml

    在提供的文件列表中,有一个名为“Privilege”的文件,这可能是示例中的一个权限或者角色相关的类,或者是一个XML配置文件,用于演示如何使用Digester解析与权限或角色相关的XML数据。具体用途可能需要参考实际的...

    digester解析xml的问题.pdf

    3. **解析 XML**:创建好 Digester 实例后,使用 `parse` 方法读取 XML 文件并执行预定义的规则。代码示例如下: ```java Digester digester = new Digester(); digester.setValidating(false); // 关闭验证,...

    digester组件简化了xml文件处理操作

    在这个示例中,我们首先创建了一个`Digester`实例,并设置了必要的规则来处理`students.xml`文件。然后,我们通过`push`方法将一个初始的`Vector&lt;Student&gt;`对象放入Digester的栈中。最后,我们调用了`parse`方法来...

    使用Digester解析XML文档示例

    Digester能够根据定义好的规则自动将XML文档转换成Java对象,非常适合用在配置文件读取、数据交换等场景。 #### 二、Digester的基本原理 1. **SAX事件驱动**:Digester内部使用SAX事件模型来解析XML文档。当解析器...

    使用Apache的Digester来解析XML文档

    4. **配置Digester规则**:设置 Digester 规则以将XML解析为Java对象。这些规则通常在程序启动时初始化: ```java Digester digester = new Digester(); digester.setRulesValidation(true); // 启用规则验证 // ...

    Digester读取XML学习

    Apache Commons Digester是一个强大的工具,它允许开发者将XML文件解析为Java对象,通过匹配XML元素规则来调用对象的方法或设置属性。本篇文章将深入探讨如何使用Digester进行XML解析,并提供相关的学习资源。 ...

    Digester读取xml教程.rar

    在Java开发中,处理XML文件是常见的任务,而Apache Commons Digester库提供了一种高效且便捷的方式来解析XML并将其映射到Java对象。本教程将深入探讨如何使用Digester来读取XML文件,帮助你更好地理解和应用这一强大...

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

    在Java开发中,Struts框架提供了一个强大的工具——Digester,用于解析XML文件并自动创建、配置Java对象。本文将详细介绍如何使用Digester处理具有嵌套结构的XML文档,并通过一个具体的实例——"DigesterXmlTest"来...

    Commons-digester:规则引擎全实例

    5. 解析XML:最后,调用 Digester.parse() 方法解析XML文件, Digester 将自动根据规则创建和配置Java对象。 四、实例分析 以 test-mvn 文件为例,我们可以假设这是与Maven配置相关的XML文件。在 Commons Digester...

    digester解析xml必备包.rar

    使用这些库,开发者可以创建一个XML配置文件,定义XML结构与Java对象之间的映射规则。例如,XML文件中的每个`&lt;employee&gt;`元素可能对应一个`Employee`类的实例,而`&lt;employee&gt;`的`&lt;name&gt;`和`&lt;age&gt;`子元素则分别映射到...

    Digester java解析xml

    在Java开发中,处理XML数据时,Digester是一个强大的工具,尤其在构建配置文件或者进行数据输入时。 Digester的基本工作原理是通过规则(Rules)来定义XML元素和Java对象之间的关系。当XML解析器遇到匹配的元素时,...

    利用Digester把XML转换成为Java对象

    使用Digester来处理XML配置文件是一种高效且灵活的方式,它能够显著减少代码量并提高系统的可维护性和扩展性。通过将XML文件与Java Bean之间的映射关系配置好,我们可以轻松地将XML文件中的配置数据转换成Java对象,...

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

    - **配置文件解析**:Digester常用于处理XML配置文件,创建和初始化Java对象。 - **XML数据绑定**:在处理XML格式的数据交换时,可以方便地将XML转换为Java对象模型。 - **简化对象构建**:在对象层级复杂,需要...

    Digester解析XML问题.pdf

    Apache Commons Digester是一个用于将XML数据映射到Java对象的工具,主要应用于处理XML配置文件或数据文件。它通过定义一系列的模式和规则,能够自动地创建和填充Java对象的结构,大大简化了XML解析的过程。 ...

Global site tag (gtag.js) - Google Analytics