Digester的XML规则文件配置
文章分类:Java编程
在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" />
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余1页未读,立即下载