Servlet:从入门到实战学习(2)---Servlet生命周期

时间:2023-03-08 19:41:23

一个Servlet的完整的生命周期(从创建到毁灭)包括:init()方法,service()方法,doGet()方法,doPost()方法,destroy()方法

init()方法用于 Servlet 在服务器第一次启动时被加载时,init() 方法里可简单地创建或加载一些数据,一般用的不是很多。

Servlet:从入门到实战学习(2)---Servlet生命周期

destroy() 方法在 Servlet 生命周期结束时被调用。用于让 Servlet 关闭数据库连接、停止后台线程等,执行类似的清理活动,一般用的也不是很多。

Servlet:从入门到实战学习(2)---Servlet生命周期

service()方法是执行实际任务的主要方法。Servlet 容器(即 Web 服务器)调用 service() 方法来处理来自客户端(浏览器)的请求,并把格式化的响应写回给客户端。

每次服务器接收到一个 Servlet 请求时,服务器会产生一个新的线程并调用服务。service() 方法检查 HTTP 请求类型(GET、POST、PUT、DELETE 等),并在适当的时候调用 doGet、doPost、doPut,doDelete 等方法。

但service()方法由容器调用,所以我们不需对service()方法进行操作。

Servlet:从入门到实战学习(2)---Servlet生命周期

现在来到重点标红的servlet里的doGet()和doPost()方法

从浏览器到 Web 服务器,最终到后台程序。浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法。

GET 方法:页面请求发送已编码的用户信息。页面和已编码的信息中间用 ? 字符分隔表示,如:www.baidu.com?key1=value1&key2=value2

doGet()方法:

doGet()方法可以处理一个 GET请求---URL 的正常请求(或者来自于一个未指定 METHOD 的 HTML 表单)。

Servlet:从入门到实战学习(2)---Servlet生命周期

 POST 方法:向后台程序传递信息的比较可靠的方法。POST 方法打包信息的方式与 GET 方法基本相同,但是 POST 方法不是把信息作为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息作为一个单独的消息。消息以标准输出的形式传到后台程序,您可以解析和使用这些标准输出。Servlet 使用 doPost() 方法处理这种类型的请求。

doPost()方法:

doPost() 方法处理一个POST 请求---一个特别指定了 METHOD 为 POST 的 HTML 表单。

Servlet:从入门到实战学习(2)---Servlet生命周期

我们开发servlet主要是写servlet中的doGet()、doPost()方法,来处理前端请求并返回前端所需要的数据。

下篇通过实例讲述Servlet()