Servlet周期
Servlet的生命周期一般分为四个阶段,Servlet的产生,初始化,调用Servlet方法,最后是对Servlet的销毁.标志这个Servlet生命周期的结束.
1.Servlet的产生.
一个Servlet的产生是因为客户端有一个request请求的过来.这样服务器会生产一个Servlet.而且一个Servlet只生成一次.即服务器只加载对于一种Servlet只会加载一次.
在服务起内部首先会判断服务器的JVM是否已经加载了这个Servlet(内部是以这样的形式加载Class.forName("Servlet名字"),该方法加载这个类,并生成该类的实例.)
如果没有就加载这个Servlet.若有,则直接跳过加载这步,进入初始化inti().
2.Servlet的初始化inti()
在加载一个Servlet后,服务器会自动调用inti()方法,默认的是调用有参的初始化方法
public void inti(ServletCongfig config)throws ServletException{
this.config=config;
inti();
}
生成一个config.这样在之后Servlet方法中可以直接调用ServletConfig()的一些方法,而不必在前面加getServletConfig().getIntiParameter()来获得自己想要的初始化参数.
2.1初始化方法的覆盖:
我们在初始化某个Servlet的时候有两种方法
2.1.1 直接覆盖有参的inti方法.
当我们生成一个Servlet后,服务器会默认的调用有参的inti(),那么若我们覆盖了这个方法,服务器首先调用的就是我们覆盖后的inti(),不会去调用父类的初始化方法,这样就无法生成一个config.所以我们的这种方法方式覆盖,需要我们在覆盖的方法中调用父类的inti(),即super.inti(config).
2.1.2 覆盖无参的inti()方法
由上可知,生成一个Servlet,会自动调用有参的inti()方法,生成一个config.而在有参的inti()方法中,有调用了无参的inti(),那么我们只需要覆盖无参的inti()方法,并在里面添加我们需要的信息即可.这种方法较为简单,推荐使用这种方式.
分享到:
相关推荐
### Servlet生命周期详解 #### 一、引言 在Java Web开发中,Servlet作为一种重要的技术,被广泛应用于构建动态网页和处理客户端请求。了解Servlet的生命周期对于深入理解和掌握Servlet的工作机制至关重要。本文将...
此外,还包括了Servlet生命周期管理的接口,如Servlet、ServletConfig和ServletContainerInitializer,它们帮助服务器管理和加载Servlet实例。 在实际开发中,将`javax.servlet-api-3.1.0.jar`作为项目的依赖,可以...
9. **生命周期管理**:Servlet 3.0允许自定义Servlet、Filter和Listener的初始化和销毁逻辑,通过实现`ServletContextListener`接口中的相应方法。 `servlet.LICENSE.txt`文件通常包含了关于Servlet API 3.0的许可...
5. **Servlet生命周期** - 初始化:当Servlet首次被请求或者在web.xml中配置了`load-on-startup`时,Servlet容器会调用Servlet的`init()`方法进行初始化。 - 服务:每当有新的请求到来,Servlet容器创建一个...
通过阅读源码,我们可以理解Servlet API的工作机制,了解请求和响应对象的内部实现,以及容器如何管理Servlet的生命周期。这对于优化性能、调试问题以及自定义Servlet行为都非常有帮助。 在实际开发中,我们通常...
**Servlet生命周期** Servlet的生命周期可以分为三个主要阶段:初始化、服务和销毁。 1. **初始化阶段**: - 当Servlet首次被请求或者在web应用启动时,容器(如Tomcat)会加载Servlet类,并调用`init()`方法进行...
### SERVLET生命周期与JSP生命周期比较 #### 一、引言 在现代Web开发中,Servlet和JSP是两种非常重要的技术,它们都属于Java EE平台的一部分,主要用于构建动态Web应用程序。这两种技术各有特点,但又紧密相关,...
初始化阶段是整个Servlet生命周期的第一个关键步骤,它标志着Servlet的开始。此阶段主要由以下步骤组成: 1. **Servlet容器加载Servlet类**:Servlet容器负责加载Servlet类,并将.Class文件的数据读入内存。这一...
在Servlet的生命周期中,`init()`方法在Servlet实例化后首次被调用,用于初始化Servlet;`service()`方法处理客户端请求;而`destroy()`方法在Servlet销毁前执行,用于释放资源。源码中,我们可以看到这些方法的具体...
如果在不同作用域(request, session, application)中设置,那么数据的可见性和生命周期也会相应地扩展。 **5. 版本2.3.2-b01** 这个特定的版本2.3.2-b01修复了一些已知问题和可能存在的安全漏洞,同时可能引入了...
### Servlet 生命周期演示代码详解 #### 一、Servlet 生命周期概述 在深入分析代码之前,我们先来了解一下 Servlet 的生命周期。Servlet 的生命周期主要包括三个阶段:初始化 (`init` 方法)、请求处理 (`service` ...
Servlet API 3.0-alpha-1.jar 是Java服务器端编程中的一个重要组件,它包含了用于开发和部署Web应用程序的标准接口和类。这个版本是Servlet规范3.0的早期预览版,为开发者提供了对新特性和改进的初步体验。在本文中...
Servlet生命周期是Java Web开发中一个关键的概念,它描述了Servlet从创建到销毁的整个过程,这个过程由Servlet容器(如Tomcat)进行管理。Servlet生命周期主要分为三个阶段:初始化阶段、运行阶段和销毁阶段。 1. ...
### Servlet 生命周期详解 #### 一、概述 Servlet 是 Java Web 开发的核心技术之一,用于处理客户端的 HTTP 请求并返回响应。了解 Servlet 的生命周期对于更好地控制和优化 Web 应用程序至关重要。Servlet 的生命...
- 过滤器在Servlet生命周期中扮演重要角色,可以拦截请求和响应,执行预处理或后处理任务,例如字符编码转换、权限验证等。使用`@WebFilter`注解进行配置。 4. **监听器(Listener)**: - 监听器可以监听Web应用...
10. **Servlet容器**:如Tomcat、Jetty等,它们负责加载、配置和管理Servlet,执行Servlet生命周期方法,并处理请求和响应。 11. **部署描述符(web.xml)**:Web应用的配置文件,定义Servlet、Filter和Listener,...