zoukankan      html  css  js  c++  java
  • tomcat源码阅读_代码篇3

    关于digester的详细工作过程,下面对代码进行了简单说明:

            //创建server对象,类为org.apache.catalina.core.StandardServer,第3个参数是说可以使用className属性来改变server对象
            digester.addObjectCreate("Server",
                                     "org.apache.catalina.core.StandardServer",
                                     "className");
            //设置server对象的属性
            digester.addSetProperties("Server");
           
            /*public void addSetNext(String pattern,
            String methodName,
            String paramType)
            */
            digester.addSetNext("Server",
                                "setServer",
                                "org.apache.catalina.Server");
            //同上,但是只能用固定的类来初始化对象
            digester.addObjectCreate("Server/GlobalNamingResources",
                                     "org.apache.catalina.deploy.NamingResources");
            //设置该对象属性
            digester.addSetProperties("Server/GlobalNamingResources");
           
            //同上
            digester.addSetNext("Server/GlobalNamingResources",
                                "setGlobalNamingResources",
                                "org.apache.catalina.deploy.NamingResources");
            //同上,但是第二个参数为null,所以在server.xml必须指定Listener的className属性
            digester.addObjectCreate("Server/Listener",
                                     null, // MUST be specified in the element
                                     "className");
            //同上
            digester.addSetProperties("Server/Listener");
            //同上
            digester.addSetNext("Server/Listener",
                                "addLifecycleListener",
                                "org.apache.catalina.LifecycleListener");

    其余部分的含义也大致相同,如果还有不理解的,可以在本博里查看how tomcat works第15章的内容,如果还不清楚,可以结合Digester的doc分析。

  • 相关阅读:
    Redis哨兵(Sentinel)模式
    一个http请求就是一个线程吗,java的服务是每收到一个请求就新开一个线程来处理吗
    Redis 快速入门
    Redis 持久化之RDB和AOF
    Junit 入门使用教程 转自:http://www.cnblogs.com/ysocean/p/6889906.html
    Spring里PropertyPlaceholderConfigurer类的使用 转自:https://www.cnblogs.com/huqianliang/p/5673701.html
    Apache Commons Codec 编码/解码 (Base64/MD5/SHA1/SHA256等算法) 转自https://blog.csdn.net/hbtj_1216/article/details/52813741
    hive中时间日期函数的使用
    关于mat函数
    strip 和split
  • 原文地址:https://www.cnblogs.com/macula7/p/1960491.html
Copyright © 2011-2022 走看看