手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

手动实现一个简易版 Tomcat

[日期:2018-06-15] 来源:Linux社区  作者:xiaogeng88 [字体: ]

Tomcat简介

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。 

 

手动实现

项目结构如下图所示

  

接下来我们就开始一步步实现,有servlet开发经验的对于Request和Response一定不陌生,所以就先实现自己的Request和Response。首先实现Response如下所示。 

 

接着来实现自己的Reponse,如下图所示。 

 

有了自己的请求信息和响应信息,那接下来就要写servlet了。通常写自己的Servlet的时候要继承一个Servlet的父类HttpServlet,所以首先要写一个Servlet的父类,代码如下。 

 那么接下来就要写自己业务相关的Servlet,这里写一个和学生相关的Servlet,叫StudentServlet,还有一个和老师相关的Servlet,叫TeacherServlet。具体的代码分别如下。 

 和老师相关的Servlet如下: 

 

因为浏览器在请求的时候还会请求浏览器上面显示的favicon.ico,所以要编写一个相关的servlet来处理请求,代码如下。 

 

以上就是写的跟具体实际当中业务相关的代码,还记得在Servlet的时候要在项目web.xml中配置请求地址和具体的servlet的映射关系,所以此处要手动来实现一个映射的关系。具体代码如下。 

 

以上是每个具体的Servlet的信息,接下来要写一个存储有映射关系的类,代码如下。

  

接下来就是真正的主角登场了,那就是对于请求做分发处理的相关逻辑了,具体代码如下所示。

  

 如果没有问题的话,启动main函数之后,在浏览器发起具体的请求会看到如下显示内容。 

 

 

总结

实际的tomcat要比这复杂的多,这里只是简单了实现了tomcat的一个处理逻辑的demo,比如tomcat多端口的配置,数据源的配置,热部署等相关功能,当然只要了解了主要思想,相信全部深入的了解也就没有那么难了。

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-06/152877.htm

linux
相关资讯       简易版Tomcat 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款