关于Servlet 的生命周期

Servlet生命周期(servlet 从出生到销毁,只会创建一个servlet容器)

1.加载和实例化:(构造方法)只有第一次请求servlet时。创建servlet的实例

2.初始化:(init方法)只被调用一次,在创建好实例后立即调用初始化方法

3.服务的方法:每次请求都会调用service的方法,实际用于响应请求的

4.销毁方法:只调用一次,在当service所在的web应用项目被卸载前调用,用于释放资源

 

Servlet容器响应客户请求的过程

第一步:servlet引擎检查是否已经装载并创建了该servlet的实例对象,如果是则直接执行第四步,否则执行第二步

第二步:装载并创建servlet的实例对象,调用该servlet的构造器

第三步:调用servlet实例对象的init的方法

第四步:创建一个用于封装请求ServletRequest对象和一个代表响应的消息的ServletResponse对象,然后调用Servlet的service方法并请求和响应对象作为参数传递进去

第五步:web应用程序被停止或重新启动之前,Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的destory的方法

 

get方式请求的三种方式:

1.通过URL

2.通过超链接

3.通过表单提交,method 值为 get

post方式请求的方式(只有一种)

通过表单提交,设置 method 值为 post

 

servlet 生命周期各个方法的执行过程:

package com.neuedu.controller;

 

import java.io.IOException;

 

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

@WebServlet("/test")

public class Test extends HttpServlet {

public Test() {

System.out.println("执行构造方法");

}

@Override

public void init() throws ServletException {

System.out.println("执行 init 方法");

}

@Override

protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {

// TODO Auto-generated method stub

super.service(arg0, arg1);

System.out.println("执行 service 方法");

}

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

System.out.println("执行 doget 方法");

}

@Override

public void destroy() {

System.out.println("执行 destory 方法");

}

}

当通过浏览器输入url进行请求

输出结果:

执行构造方法

执行 init 方法

执行 doget 方法

执行 service 方法

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值