自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Tomcat 9 源码分析(1)— 启动与停止

Tomcat 9 源码分析(1)— 启动与停止前言本文分析的Tomcat版本为Tomcat9.0,该版本与Tomcat8,Tomcat7大体一致,仅在部分地方有所改动,而目前最新的Tomcat10则与之前的版本相差较大。这是本人第一次阅读主流技术的源码,碍于个人能力原因,无法独自完成源码的阅读,因此本文参考了许多大佬们的文章,在本次学习中主要参考了泰山不老生博主的博客,很感谢能够翻阅到大佬的文章,所学甚多,受益匪浅。愿编码半生,如一生老友,你也加油。Tomcat模块​Tomcat的模块如图,

2021-04-08 19:33:33 343 1

原创 Tomcat 9 源码分析(5)— Session管理

Session管理Session可以用来管理用户的会话信息,最常见的就是拿Session来存放用户登录、身份、权限及状态等信息。对于使用Tomcat作为Web容器的大部分开发人员而言,本文介绍分析Tomcat是如何实现Session标记用户和管理Session信息Session接口Tomcat内部定义了Session和HttpSession这两个会话相关的接口,其类继承体系如下Session:Tomcat中有关会话的基本接口规范,下面介绍它定义的主要方法方法描述getCrea

2021-04-08 19:39:42 315

原创 Tomcat 9 源码分析(4)— 请求过程原理

Tomcat请求处理ConnectorConnector(连接器)组件是Tomcat最核心的两个组件之一,主要的职责就是负责接收客户端连接和客户端请求的处理加工。每个Connector都将指定一个端口进行监听,分别负责对请求报文的解析和响应报文组装,解析过程生成Request对象,而组装过程涉及Response对象如果将Tomcat整体比作一个巨大的城堡,那么Connector组件就是城堡的城门,每个人要进入城门就必须通过城门,它为人们进出城堡提供了通道。同时,一个城堡还可能有两个或者多个城门,每个城

2021-04-08 19:39:00 342

原创 Tomcat 9 源码分析(3)— 生命周期管理

Tomcat生命周期类接口设计![avator][tomcatLifecycle]Lifecycle:定义了容器生命周期,容器状态转换及容器状态迁移时间的监听器注册和移除等主要接口LifecycleBase:作为Lifecycle接口的抽象实现类,运用抽象模板模式将所有容器的生命周期及状态转换衔接起来,此外还提供了生成LifecycleEvent事件的接口LifecycleSupport:提供有关LifecycleEvent事件的监听器注册、移除,并且使用经典的监听器模式,实现事件生成后触发监听器

2021-04-08 19:35:26 244

原创 Tomcat 9 源码分析(2)— 类加载体系

Java虚拟机主要类加载器Bootstrap Loader(启动类加载器):加载lib目录下或者System.getProperty("sun.boot.class.path")、或者-XBootclasspath所指定的路径或jarExtended Loader(扩展类加载器):加载lib\ext目录下或者System.getProperty("java.ext.dirs")所指定的路径或jar。在使用Java运行程序时,也可以指定其搜索路径,例如:java -Djava.ext.dirs=

2021-04-08 19:34:35 166

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除