欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

HTTP服务器、Servlet容器、Tomcat

程序员文章站 2022-03-06 18:13:10
这个Servlet不陌生吧,但是我从来不知道它到底是个啥,直到某天,看了这个→从 Servlet 入手带你看架构和框架设计的套路。public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doG...

这个Servlet不陌生吧,但是我从来不知道它到底是个啥,直到某天,看了这个→从 Servlet 入手带你看架构和框架设计的套路

public class MyServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doGet(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doPost(req, resp);
    }
}

开搞!

1、正文

在早期,浏览器发起 HTTP 请求只是为了请求静态资源,用来处理 HTTP 请求并将相应的静态资源返回的程序或者叫服务器的东西,这个东西就是HTTP服务器

HTTP服务器的作用就是在于解析http请求,找到相应的静态文件并返回。

HTTP服务器、Servlet容器、Tomcat

但是随着互联网发展,单纯的静态文件已经满足不了业务需求了。需要满足不同请求调用不同业务逻辑来进行响应,但是又不能在 HTTP服务器写上业务代码与非业务代码,所以我们需要进行一个抽象。

HTTP服务器、Servlet容器、Tomcat

但是HTTP服务器是怎么知道它传给的是个啥东西,所以出现一个接口,也就是Servlet了,用来规范标准。

Servlet :Server Applet,全称 Java Servlet,指的是用Java 编写的服务端程序,每一个Servlet就是一个可以用来处理业务的程序。

同时还有一个Servlet 容器,来管理和加载Servlet 类,根据http请求来找到相应的servlet。

于是便有了下面的流程:

HTTP服务器、Servlet容器、Tomcat

在servlet和Servlet容器之间的关系,由web.xml来保存。

Web服务器==HTTP服务器+Servlet服务器,像Tomcta和Jetty就包含了HTTP服务器和Tomcat服务器,所以它们也就是Web服务器。

2、框架设计套路

以下的情况估计没少见,框架一般使用接口+抽象类的方式。

接口: 用来约定一个固定的方法

抽象类: 实现以上接口,并实现部分通用的程序逻辑,做到代码的复用

实现类: 实现一些常用类,剩余一部分留给开发者自行扩展

本文地址:https://blog.csdn.net/qq_40008535/article/details/112592888

相关标签: Java