Servlet学习一(生命周期)

本文详细探讨了Servlet的生命周期,包括加载、初始化、服务和销毁四个阶段。重点介绍了init()、service()、doGet()、doPost()和destroy()方法的功能和使用场景,其中init()和destroy()在生命周期中只执行一次,service()根据请求类型调用doGet()或doPost()。最后展示了代码运行的日志输出。
摘要由CSDN通过智能技术生成


前言

简单了解了Servlet是用来干什么后,我开始了其生命周期的学习,我的学习心得可能有不足之处,还请大佬多多指正。


一、生命周期定义

Servlet生命周期可被定义为从创建直到毁灭的整个过程,即加载类–>实例化(为对象分配空间)–>初始化(init())–>请求处理(service())–>销毁(destroy())。

二、生命周期方法

由于加载阶段无法观察,但是初始化、服务、销毁阶段是可以观察到的。所以接下来对这三个阶段的方法展开描述。

1.Init()

在一个Servlet的生命周期中,init方法只会被执行一次,之后无论用户执行多少次请求,都不会在调用该方法。
其定义如下:

public void init() throws ServletException {
   
  // 初始化
}

init()方法通常负责简单的创建或者加载一些数据,而这些数据将用于该Servlet的整个生命周期中。

2.service()

当一个客户发出请求时,实际处理工作全部由service方法来完成,它用来处理客户端的请求,并生成格式化的数据返回给客户端。
每一次请求服务器都会开启一个新的线程并执行一次service方法,其根据客户端的请求类型,调用doGet、doPost等方法。
其定义如下:

public void service(ServletRequest request, ServletResponse response) 
      throws ServletException, IOException{
   
}

注:service() 方法由容器调用,所以我们不用对 其做任何动作,我们只需根据来自客户端的请求类型来重写doGet() 方法或doPost() 方法即可。

3.doGet()

doGet() 方法用来处理get请求,get请求来自于一个url的正常请求,或者来自于一个未指定method的html表单。
其定义如下:

public void doGet(HttpServletRequest request,HttpServletResponse response)
    throws ServletException, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值