Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。
Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。
(1)加载:Servlet容器(Tomcat)通过类加载器加载servlet文件(.class)
(2)创建:通过调用servlet构造函数创建一个servlet对象
(3)初始化:调用init方法初始化
(4)处理客户请求:每当有一个客户请求,容器会创建一个线程来处理客户请求
(5)卸载:调用destroy方法让servlet自己释放其占用的资源
servlet是由Servlet容器负责加载Servlet类,创建Servlet对象并实例化,然后调用Servlet的init方法,进行初始化,之后调用Service方法。实例化和初始化不同。先实例化,再初始化。
ServletConfig和ServletContext
- Jsp/Servlet容器初始化一个Servlet类型的对象时,会为这个Servlet对象创建一个ServletConfig对象。在ServletConfig对象中包含了Servlet的初始化参数信息。
- ServletContext是servlet与servlet容器之间的直接通信的接口。Servlet容器在启动一个Webapp时,会为它创建一个ServletContext对象,即servlet上下文环境。每个webapp都有唯一的ServletContext对象。同一个webapp的所有servlet对象共享一个ServeltContext,servlet对象可以通过ServletContext来访问容器中的各种资源。
从作用范围来说,ServletConfig作用于某个特定的Servlet,即从该Servlet实例化,那么就开始有效,但是该Servlet之外的其他Servlet不能访问;ServletContext作用于某个webapp,即在一个webapp中相当于一个全局对象,在Servlet容器启动时就已经加载,对于不同的webapp,有不同的ServletContext。
最后,说明一下参数的获取。访问ServletConfig参数,取得ServletConfig对象后,调用getInitParameter()方法;访问ServletContext对象,只要调用现有的ServletConfig对象的getServletContext()即可,然后同样调用getInitParamter()方法就能获取参数。
Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。相关推荐
- Vue的生命周期有哪些,第一次加载会触发哪些钩子函数
Vue的生命周期有哪些,第一次加载会触发哪些钩子函数 beforeCreate created 创建 初始化数据事件 beforeMount mounted 载入 DOM渲染完成 beforeUpda ...
- Spring中Bean的生命周期以及IOC与AOP加载过程
首先说一下Bean的生命周期 Bean的生命周期 创建Bean >> 初始化 >> 摧毁 1.创建Bean 当设置Bean为单例时,在spring容器启动时会创建Bean. 当 ...
- JavaBean、MVC模式、Servlet、Servlet生命周期:5个阶段
JavaBean 后缀Dao:表示操作数据库. JavaBean(就是一个java类)定义: (1)public修饰的类,public无参构造 (2)所有属性都是private,并且提供set/get ...
- servlet的生命周期 (四个阶段).
1.加载阶段 加载并实例化我们的servlet实例 从我们的Tomcat(容器)启动,Tomcat会通过类的加载器加载我们的servlet,并调用默认的构造函数 2.初始化阶段init() servl ...
- Servlet的生命周期和工作原理
原文 一.Servlet生命周期分为三个阶段: 1).初始化阶段:调用init()方法 2).响应客户端请求阶段:调用service()方法 3).终止阶段:调用destroy()方法 ...
- 41. 请简述 Servlet 的生命周期中的方法及作用
Servlet 生命周期分为三个阶段: (1)初始化阶段:调用 init() 方法 (2)响应客户端请求阶段:调用 service() 方法 (3)终止阶段:调用 destroy() 方法 生命周期: ...
- Servlet的生命周期(简单易懂)
生命周期是指事物从创建到毁灭的过程.人的生命周期就是从出生到死亡的过程,在这个过程中,必定会有一些与生命周期息息相关的事件,如:出生.吃饭.上学.死亡等.这些事件会在生命周期中的某个特定时刻发生. S ...
- Servlet 的生命周期详解
目录 1.Servlet 的生命周期 2.Spring 中一个 Controller 是一个Servlet 吗? 3.在 Spring 中有多少个 Servlet ? 4.DispatcherServ ...
- java之Servlet的生命周期
Servlet运行在Servlet容器中,其生命周期由容器来管理.Servlet的生命周期通过javax.servlet.Servlet接口中的init().service()和destroy()方法 ...
最新文章
- 转;说说AngularJS中的$parse和$eval
- 使用PCB Editor 制作元件封装Footprint
- bugly怎么读_高级功能
- ApacheSkyWalking APM 生态衍生多语言监控, 支持 .NET Core
- Git Permission to fazhiyun86/Test.git denied to MarRoar
- 看mysql版本信息_查看mysql 的版本信息
- Android数据储存之SharedPreferences总结
- goland gorm分组查询统计_golang gorm 计算字段和获取sum()值的实现
- 【Hbase】程序批量put数据到Hbase
- LoadRunner启动自带例子Web Tours报错
- xul 和xml区别_使用Atom XML和Firefox XUL实施Web剪切和粘贴
- 原生js绑定事件的三种方法
- java开发的微信公众号服务端生产环境中的两个大坑
- 建模神器 | 涨知识,BIM渲染神技能
- “80后”古宅修复者辗转5省 用匠心唤醒老宅魅力
- [leetcode] 116. Populating Next Right Pointers in Each Node @ python
- 设计师一定要知道这几个网站,解决你80%的设计素材。
- matlab 蜡烛图 颜色,Matplotlib图facecolor(背景颜色)
- 《嵌入式 - 嵌入式大杂烩》深入理解单总线协议
- 2022解决谷歌服务助手错误:很抱歉,当前暂不支持该设备,华为荣耀鸿蒙,MagicUI安装谷歌服务框架Google Play商店GMS
热门文章
- GhostXP_SP2电脑公司经典版_v8.0
- 松下服务器型号,WEA-ASC970/CH 松下综合型系统管理服务器
- 特斯拉入华,充电接口怎么办?
- 如何写综述论文全攻略
- python截取字符串后三位_python如何截取字符串后几位
- 关于Connections could not be acquired from the underlying database
- 英飞凌基础学习笔记(SMU)Safety Management Unit
- 从OJB到Hibernate的迁移
- html 滚动图片代码
- 机器学习算法之贝叶斯算法 3、案例二:新闻数据分类