徒手开发一个迷你版本的tomcat服务器
目录
一:本项目是什么
二:为什么要学习这个项目
三:技术准备:
四:与 Tomcat 的区别
五:开发工具:Eclipse 还是 IDEA
学习地址
项目演示
一:本项目是什么
本项目是站长带着大家自己写一个 Tomcat,基本具备 Tomcat 的核心功能, 如:
Html 文件纯文本文件日志功能多线程多应用404响应500响应欢迎文件mime-type二进制文件Servlet公共类加载批处理 batWeb应用类加载jar 文件动态热加载Servlet 的单例Servlet 的生命周期Servlet 的自启动Request 获参Request 获取头信息Request 常见方法CookieSessiongzip 压缩jsp 转译与编译jspClassLoader客户端跳转服务端跳转服务端传参责任链模式Filterwar 静态部署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 上运行
更多相关文章
- 04. SpringCloud实战项目-安装Docker
- 12. SpringCloud实战项目-搭建管理后台
- 03. SpringCloud实战项目-配置虚拟机网络
- 02. SpringCloud实战项目-快速搭建Linux环境-运维必备
- SSM(Spring+SpringMVC+MyBatis)实战项目-天猫商城
- 10. SpringCloud实战项目-微服务划分图
- 01. SpringCloud实战项目-五分钟搞懂分布式基础概念
- 11. SpringCloud实战项目-初始化数据库和表
- 09. SpringCloud实战项目-初始化项目和添加微服务