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

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


2. Servlet解决了什么?
ServletServlet容器使得web服务器有了处理动态资源的能力Servlet就是web服务器处理动态资源的具体实现。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 等。
    ---来源:百度百科 ↩︎apache

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

相关文章
相关标签/搜索