码迷,mamicode.com
首页 > 其他好文 > 详细

一个servlet server,由移植自Tomcat的连接器模块和自编写的container模块代码组成

时间:2018-06-28 19:23:23      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:分享   不同   子程序   分享图片   分析   函数   nta   src   特性   

  • 背景

  Tomcat通过启动连接器之前给连接器填充container容器实现了解耦(静态关系),本篇的连接器完全使用Tomcat的源代码org.apache.catalina中的通用接口。org.apache.catalina.connector包,而container相关代码自编写,并且作者利用java特性巧妙去复用了org.apache.catalina包中的接口(因为我们也要依据定义来)。container容器除了invoke动态加载servlet还做了哪些工作当前还一无所知,要想获得信息只有让子程序继续执行。值得注意的是,从始至终都没有静态地去分析类的层次关系、定义,也没有逐一的去阅读目标类的每一个函数,这是因为静态层次无非是接口、抽象 类再到实现类这样的模版复用方式;某个类中的方法也无非是“一类”函数(过程)被编写到一个类文件,共享“同类”数据而已。这些通过源码的包结构和类声明就完全可以 知道答案。 程序分析的主要切入点还是,运行了那些方法,类中那些方法还没被执行过,将在哪里被执行(和阅读JDK源码不同,它是有主程序)! 

  • 程序结构

技术分享图片

 

一个servlet server,由移植自Tomcat的连接器模块和自编写的container模块代码组成

标签:分享   不同   子程序   分享图片   分析   函数   nta   src   特性   

原文地址:https://www.cnblogs.com/10000miles/p/9240080.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!