• 1.为什么会有Servlet?它解决了什么问题?


    1. 为什么会出现Servlet?
    因为web服务器(tomcat、Weblogic、iis、apache)没有处理动态资源请求的能力(即该请求需要计算),只能处理静态资源的请求(如果浏览器请求某个html页面,web服务器查看请求的html页面是否存在,存在则返回。)如果要让web服务器处理动态资源的请求,则需要使用CGI[1]程序、组件加容器的方式。


    2. Servlet解决了什么?
    ServletServlet容器使得web服务器有了处理动态资源的能力Servlet就是web服务器处理动态资源的具体实现。


    3. Servlet和Servlet容器如何让web服务器有处理动态资源的能力?

    1. 浏览器根据url访问服务器上的web服务器[2]程序
    2. web服务器程序获取到请求,转发给servlet容器
    3. servlet容器根据该请求,编译执行特定的servlet类文件
    4. servlet类文件根据请求执行不同的方法,动态生成结果
    5. servlet类文件将执行后的静态数据,返回给servlet容器
    6. servlet容器静态数据返回给web服务器web服务器静态数据返回给浏览器
    7. 浏览器展示静态数据

    1. CGI是Web服务器运行时外部程序的规范,按CGI 编写的程序可以扩展服务器功能。CGI 应用程序能与浏览器进行交互,还可通过数据API与数据库服务器等外部数据源进行通信,从数据库服务器中获取数据。格式化为HTML文档后,发送给浏览器,也可以将从浏览器获得的数据放到数据库中。几乎所有服务器都支持CGI,可用任何语言编写CGI,包括流行的C、C ++、VB 和Delphi 等。
      ---来源:百度百科 ↩︎

    2. Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个Web服务器是Apache、 Nginx 、IIS。
      ---来源:百度百科 ↩︎

  • 相关阅读:
    献给 Python 开发人员的 25 个最佳 GitHub 代码库!
    6 drf-认证权限解析频率
    4: drf视图组件
    3 drf请求与响应
    十三:Django框架学习之auth模块
    十二:django中间件学习之拓展1
    git光速从入门到精通
    mac系统下的mysql安装(ver.8.0.20)
    python小练习——2048
    docker下overlay2占用空间过大,清理docker占用空间
  • 原文地址:https://www.cnblogs.com/strive-for-life/p/11187253.html
Copyright © 2020-2023  润新知