-
Digester源码解析(4讲)
本篇主要说下Digester的内置属性是怎样通过相互配合最后生成java Bean的。还是以第一篇的demo为例: digester.push(new DigesterDemo()); //指明匹配模式和要创建的类 digester.addObjectCreate( "students/student", Student.class); //将元素属性也映射到对象中 digester.addSetProperties( "students/student"); //当移动到下一个标签中时的动作 digester.addSetNext( "students/stude...2013-02-21 阅读170
-
Digester源码解析(3讲)
在进行下面的源码解析之前,我们先来讨论个概念----节点工作环境。 看了org.apache.commons.digester.Digester的源码会知道Digester类继承了DefaultHandler类,而DefaultHandler实现了包括ContentHandler接口在内各种处理器接口,因此Digester也是一个ContentHandler处理器,那么当xml文档 被解析时,当解析到某一元素时就会依次调用Digester的startElement()、characters()、endElement()三个方法。由于这三个方法在不同时点运行,所以...2013-02-19 阅读168
-
Digester源码解析(2讲)
接着上一篇。这篇我们来分析有关匹配模式规则配置,及规则管理的源码。 匹配模式(matching pattern)的规则(rule)是如何配置上去的,以创建对象规则ObjectCreateRule为例,如下: //指明匹配模式和要创建的类 digester.addObject...2013-02-17 阅读194
-
Digester源码解析(1讲)
Digester 是apache 下 commons常用组件库中的一个工具,其主要功能就是将xml文件转为java bean。它是通过sax的方式解析xml文档。 struts1 中读取配置文件就是使用Digester。今天我们就来解析下Digester的源码。本次解...2013-02-15 阅读189