一、Servlet是什么?
Servlet是独立于操作系统平台和网络传输协议的服务器端的Java应用程序,作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
使用 Servlet,我们可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页(扩展服务器的功能)。
二、Servlet架构
Servlet 在 Web 应用程序中的位置。
Servlet类与接口关系
三、Servlet和Applet
- 相似之处
(1)都是基于Java的技术—面向对象;
(2)都不是独立的运用程序,不能独自运行;
(3)都不由用户直接使用,而是以另外的方式(容器或是控件)来调用;
(4)都有一个生命周期。 - 不同之处
(1)Servlet在服务器端,无图形界面;
(2)Applet在客户端,具有图形界面。
四、Servlet任务
Servlet 执行以下主要任务:
1.读取客户端发送的显式的数据。这包括网页上的 HTML 表单,或者也可以是来自 applet 或自定义的 HTTP 客户端程序的表单。
2.读取客户端发送的隐式的 HTTP 请求数据。这包括 cookies、媒体类型和浏览器能理解的压缩格式等等。
3.处理数据并生成结果。这个过程可能需要访问数据库,执行 RMI 或 CORBA 调用,调用 Web 服务,或者直接计算得出对应的响应。
4.发送隐式的 HTTP 响应到客户端。这包括告诉浏览器或其他客户端被返回的文档类型(例如 HTML),设置 cookies 和缓存参数,以及其他类似的任务。