设为首页 收藏本站
查看: 235|回复: 0

[经验分享] Tomcat源代码阅读笔记[1]

[复制链接]

尚未签到

发表于 2017-2-1 14:13:46 | 显示全部楼层 |阅读模式
准备开始阅读Tomcat 5.5的源代码,可能会把笔记和进度贴在这里。

org.apache.catalina
Interface Authenticator
一个被用作标记的interface,和serilized interface类似,自身没有定义任何函数。被用来标记提供认证服务的类。
<o:p> </o:p>
org.apache.catalina
Interface Cluster
TO DO
<o:p> </o:p>
org.apache.catalina
Interface Contained
用作表明某个类至多被一个Container包含。
<o:p> </o:p>
org.apache.catalina
Interface Container
该接口的作用是从客户端接受request并生成response。为了能够在运行时定义一个Container的处理行为,一般来说实现Container的类还会同时实现Pipeline这个接口,通过在运行时动态改变Pipeline中包含的Value对象的排列来改变对request的处理方法。
Container出现在Catalina中的多个概念层次,分别对应为
            Engine  - To DO Representation of the entire Catalina servlet engine, most likely containing one or more subcontainers that are either Host or Context implementations, or other custom groups.
            Host     - TO DO Representation of a virtual host containing a number of Contexts
            Context            - TO DO Representation of a single ServletContext, which will typically contain one or more Wrappers for the supported servlets.
            Wrapper          - TO DO Representation of an individual servlet definition (which may support multiple servlet instances if the servlet itself implements SingleThreadModel).
四个子interface
一个Container可以包含子Container。该interface定义了一些和操作其包含的子Container相关的事件,如加入和删除子Container
<o:p> </o:p>
org.apache.catalina
Interface ContainerListener
定义了一个接受ContainerEvent类型参数的containerEvent函数。
<o:p> </o:p>
org.apache.catalina
Interface ContainerServlet
TO DO
<o:p> </o:p>
org.apache.catalina
Interface Context
用来代表Servlet ContextContainer。其父Container一般为Host(代表一个虚拟主机),其子Container一般为Wrapper(代表一个具体的Servlet实现)。
interface有很多和Servlet Context相关的函数。例如addParameteraddErrorPageaddServletMapping等等,不难看出这些函数和每个web applicationweb.xml中的元素相关。
<o:p> </o:p>
org.apache.catalina
Interface Engine
TO DO
<o:p> </o:p>
org.apache.catalina
Interface Group
用来代表一个user组。
<o:p> </o:p>
org.apache.catalina
Interface Host
TO DO 用来代表一个虚拟主机。其父Container一般为Engine,其子Container一般为Context
<o:p> </o:p>
org.apache.catalina
Interface InstanceListener
TO DO
<o:p> </o:p>
org.apache.catalina
Interface Lifecycle
当某个组件需要支持生命期时,就实现这个interface。该接口定义了一系列的生命期事件,并提供startstop该组件和为该组件添加、删除listener的方法。
<o:p> </o:p>
org.apache.catalina
Interface LifecycleListener
定义了一个接受LifecycleEvent类型参数的lifecycleEvent函数。
<o:p> </o:p>
org.apache.catalina
Interface Loader
该接口代表了Container用来载入classJava ClassLoader对象。个人认为该接口的实现类应为Java ClassLoader的一个wrapper
TO DO 实现该接口的一些要求(与Context的生命期有关)。
<o:p> </o:p>
org.apache.catalina
Interface Manager
用来管理某个特定ContainerSession池。
TO DO 实现该接口的一些要求(与Context的生命期有关)。
<o:p> </o:p>
org.apache.catalina
Interface Pipeline
一个Pipeline就是由一些Value组成的序列。当request到达时,Pipeline将其按顺序通过每一个ValuePipeline的最后一个Value被称为BasicBasic将完成response的生成,而不是将request继续传递下去。
<o:p> </o:p>
org.apache.catalina
Interface Realm
TO DO

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-336200-1-1.html 上篇帖子: eclipse启动tomcat正常,但无法访问主页和项目 下篇帖子: tomcat 6 el表达式的问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表