SetNextRule和SetRootRule的区别

原创 2007年09月17日 14:58:00

       SetNextRule的提取Digest中stack栈中,最上面的两年参数,以第一个为child,第二个为parent。

           public void end() throws Exception {
                  Object child = digester.peek(0);
                  Object parent = digester.peek(1);
                      ...................
                  //Call the specified method
                  Class paramTypes[] = new Class[1];
                     if (paramType != null)
                                 paramTypes[0] = digester.getClassLoader().loadClass(paramType);
                 else
                                 paramTypes[0] = child.getClass();
                  if (useExactMatch) {
                                 MethodUtils.invokeExactMethod(parent, methodName, new Object[] {child}, paramTypes);
                    }

                    else
                                MethodUtils.invokeMethod(parent, methodName, new Object[]{ child }, paramTypes);
                       }

      SetRootRule提取Digest中Stack中,第一个为child,最底层的为parent.

               Object child = digester.peek(0);
               Object parent = digester.root;

                 .................

Class paramTypes[] = new Class[1];
  if (paramType != null) {
   paramTypes[0] = digester.getClassLoader().loadClass(paramType);
  } else {
   paramTypes[0] = child.getClass();
  }

  if (useExactMatch) {
   MethodUtils.invokeExactMethod(parent, methodName,
     new Object[] { child }, paramTypes);
  } else {
   MethodUtils.invokeMethod(parent, methodName,
     new Object[] { child }, paramTypes);
  }

${}和#{}的区别

mybatis中${}和#{}区别
  • zouxucong
  • zouxucong
  • 2016年10月17日 11:53
  • 13320

&&和&的区别,||和|的区别

“&”和“&&”的区别: 单&时,左边无论真假,右边都进行运算; 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。 “|”和“||”的区别同理,双或时,左边为真,右边不参与...
  • daijiguo
  • daijiguo
  • 2015年03月04日 10:13
  • 364

.*? 和 .*的区别

在看js代码的时候,有时候会遇到 .*? 这样的写法,那么连续两个限制符是什么意思呢?我们先来回顾一下正则表达式的基本知识。基本语法 符号 用法 . 匹配除“\r\n”之外的任何单个字符...
  • foreverling_ling
  • foreverling_ling
  • 2016年11月09日 17:23
  • 1901

==和===有什么区别

”==”与”===”是不同的,一个是判断值是否相等,一个是判断值及类型是否完全相等。 下面的规则用于判定===运算符比较的两个值是否相等的判断条件 •如果两个值的类型不同,它们就不相同。 •如果...
  • lmwyc123
  • lmwyc123
  • 2015年07月16日 22:55
  • 1730

说说&和&&的区别?

http://zhidao.baidu.com/link?url=PRB4Cnj6QcqgqEC8JV6T91G5rfT_jh-4Rtvj8I1ZTXgD3bdLKDbmMTg3hmQ2rWZJiCI...
  • zangchaodotcnatgmail
  • zangchaodotcnatgmail
  • 2015年12月03日 16:36
  • 1271

&与&& ,|与||的区别

&&和||是短路运算符,&和|是非短路运算符 &&与& 区别:两者都表示“与”运算,但是&&运算符第一个表达式不成立的话,后面的表达式不运算,直接返回。而&对所有表达式都得判断。 || 与|:两者都...
  • fumier
  • fumier
  • 2015年03月25日 08:30
  • 10598

请解释&和&&、|和||的区别?

· 与操作:与操作分为两种,一种是普通与,另外一种是短路与: |- 普通与(&):表示所有的判断条件都要执行,不管前面是否满足; |- 短路与(&&):如果前面的条件已经是false了,那么后面的...
  • heifan2014
  • heifan2014
  • 2016年10月22日 11:42
  • 848

MyBatis 中#与$的区别

今天在工作中有个点击排序的功能调试了许久,终寻因,总结之。   需求是这样的,页面有个table,有一列的上下箭头可点击并排序。对于这种需求,我的mybatis.xml的sql配置写成了如下:  ...
  • u011519624
  • u011519624
  • 2017年01月22日 23:42
  • 4681

c++中->和.的区别

->用在指针类型的类实例的,而.用在实例化对象的指向。 下面是例子 #include using namespace std; class Complex { private: double ...
  • genghaihua
  • genghaihua
  • 2013年12月09日 11:20
  • 8417

<%= %>、<% %>、<%@ %>、<%:%>和<%# %>的区别

里面放的变量名,未经过encode 里面放的变量名,经过encode 中间一般放函数或者方法,典型的asp程序写法。   这里是数据的绑定 只能用在数据绑定控件中。 ...
  • zyh_1988
  • zyh_1988
  • 2016年06月07日 21:51
  • 2552
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SetNextRule和SetRootRule的区别
举报原因:
原因补充:

(最多只允许输入30个字)