vlambda博客
学习文章列表

徒手开发一个Tomcat,给简历添加一点色彩

       

一:本项目是什么

本项目是站长带着大家自己写一个 Tomcat,基本具备 Tomcat 的核心功能, 如:

Html 文件

纯文本文件

日志功能

多线程

多应用

404响应

500响应

欢迎文件

mime-type

二进制文件

Servlet

公共类加载

批处理 bat

Web应用类加载

jar 文件

动态热加载

Servlet 的单例

Servlet 的生命周期

Servlet 的自启动

Request 获参

Request 获取头信息

Request 常见方法

Cookie

Session

gzip 压缩

jsp 转译与编译

jspClassLoader

客户端跳转

服务端跳转

服务端传参

责任链模式

Filter

war 静态部署

war 动态部署

监听器模式

Context 监听器

二:为什么要学习这个项目

1. 学完之后,能够 "自己写个Tomcat", 能做到这一点本身就说明技术不错了

2. 在制作 DiyTomcat 的过程中,需要解决各种各样稀奇古怪的问题,最后能够做出来,功力就会有大大的提升

3. 在简历里会成为亮点, 对面试官很有吸引力, 为争取高薪岗位提供了重要的砝码

要完成这个项目,需要有相当坚实的基础才行。

三:技术准备:

首先是阶段教
JAVA 基础 所有内容
JAVA 中级 所有内容
J2EE 所有内容


其次是系列教程:
Java反射机制教程
log4j 入门教程
junit 入门教程
hutool 系列教程
jsoup 入门教程
HTML 系列教程


然后是项目教程:
至少完成一个 J2EE 项目 ,建议是 JAVA WEB 项目教程-模仿天猫整站 J2EE版

尤其是项目,必须要有至少一个J2EE 项目开发经验,才能对 J2EE 的各项技术有较为到位的理解,也才能够理解 DiyTomcat 到底在做什么。

四:与 Tomcat 的区别

本项目是参考 Tomcat 的源码,自己做了一个 具备 Servlet 容器功能的 web 服务器,但是并不是和 Tomcat 源码一样。

Tomcat 本身的功能十分丰富,而且系统架构也比较复杂,站长个人觉得并不适合直接通过完全仿照来学习。

在研习了 Tomcat 源码的基础之上, 站长 去繁化简, 从0开始,步步深入带着大家做出一个同样具备核心功能的 tomcat 出来。

参与制作 DiyTomcat , 更加容易消化理解,学习曲线更加平滑。

五:开发工具:Eclipse 还是 IDEA


目前的主流 IDE (集成开发环境) 是Eclipse 和 IDEA。
站长平时工作都是习惯用 Eclipse,在开发这个 diy tomcat 项目期间,用的也是 Eclipse, 可以说 diytomcat是用 eclipse开发的。
而考虑到不少同学使用的是 idea, 于是做教材就会用 idea 来做,这样可以客观上自然就验证了本项目既可以在 eclipse 也可以在 idea 上运行了。
其实,diytomcat 本身就是个 普通的 java 程序,本质上自然可以在所有的 IDE 上运行

学习地址,点击了解:https://how2j.cn/k/diytomcat/diytomcat-intro/2187.html

项目演示,点击了解:https://how2j.cn/k/diytomcat/diytomcat-demo/2499.html