Servlet初识
1.servlet的生命周期

servlet生命周期中的三大重要时刻

servlet从不存在状态迁移到初始化状态(能够为客户提供服务),首先是从构造函数开始,但是构造函数只是使其成为一个对象,而不是一个servlet,要想成为一个servlet,对象必须具备一些servlet特性,比如能够使用ServletContext引用从容器得到信息。
容器初始化一个servlet时,会为这个servlet创建一个唯一的ServletConfig对象。容器从DD(部署描述文件)读出servlet初始化参数,并把这些参数交给ServletConfig,然后把ServletConfig传递给servlet的init()方法。servlet初始化参数只能读一次,就是在容器初始化servlet的时候,然后就不能修改了,也就是说在servlet的一生中init()只调用一次。
2.servlet的每个实例?
任何servlet类都不会有多个实例,容器运行多个线程来处理对一个servlet的多个请求,对每个客户请求,会生成一对新的请求和响应对象。
3.servlet的初始化参数
servlet可以有初始化参数。有两种配置方式:
1)在DD文件中配置

2)使用动态注入的方式配置(限于servlet3.0版本)

4.ServletConfig对象
容器初始化servlet时,会为这个servlet创建一个唯一的ServletConfig,容器从DD读出servlet初始化参数,并把这些参数交给ServletConfig,然后把ServletConfig传递给servlet的init方法。在servlet初始化之前不能使用servlet初始化参数,因为在容器调用init()之前,构造函数还不一定初始化完全ServletConfig对象。servlet初始化参数只能在容器初始化servlet时设置一次,一旦容器创建了ServletConfig对象,容器不会再设置初始化参数。

使用servlet初始化参数

5.servlet初始化参数和上下文初始化参数

每个servlet都有一个ServletConfig,每个web应用共用一个ServletContext。
Servlet初识的更多相关文章
- [Servlet] 初识Servlet
什么是Servlet? 定义 Servlet的全称是 Server Applet,顾名思义,就是用 Java 编写的服务器端程序. Servlet 是一个 Java Web开发标准,狭义的Servle ...
- servlet初识servletConfig
package day09; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; ...
- 初识Servlet
1.创建DispatcherServlet package myservlet; import java.io.IOException; import javax.servlet.ServletExc ...
- 初识Jsp,JavaBean,Servlet以及一个简单mvc模式的登录界面
1:JSP JSP的基本语法:指令标识page,include,taglib;page指令标识常用的属性包含Language用来定义要使用的脚本语言:contentType定义JSP字符的编码和页面响 ...
- Servlet之初识
doHeader 用于处理HEADER请求doGet 用于处理GET请求,也可以自动的支持HEADER请求doPost 用于处理POST请求 doPut 用于处理PUT请求 doDelete 用于处理 ...
- 初识JAVA,对servlet的理解
一.WEB开发的简单理解 Web开发是一个指代网页或站点编写过程的广义术语.网页使用 HTML.CSS 和 JavaScript编写.这些页面可能是类似于文档的简单文本和图形.页面也能够是交互式的,或 ...
- servlet学习总结(一)——初识Servlet
Servlet工作过程 当客户端向web服务器发送servlet请求时,web服务器首先检查是否已经加载并创建了servlet实例对象.如果没有会装载并创建该Servlet的一个实例对象.然后调用se ...
- [Servlet&JSP] 初识ServletContext
ServletContext是整个Web应用程序运行后的代表对象,能够通过ServletConfig的getServletContext()方法来取得,之后就能够利用ServletContext来取得 ...
- 初识Java Servlet
Java Servlet是什么? Servlet的本质就是一个Java接口,之所以能生成动态的Web内容,是因为对客户的一个HTTP请求,Servlet通过接口这个规范重写了其中的方法,然后Web服务 ...
随机推荐
- ajax小技巧,防止多次点击发送多个请求
var isAjax=false;$("btn").click(function(){ if(isAjax) return; isAjax=true; setTimeout(fun ...
- Objective-C与C++的区别
1.两者的最大相同:都是从C演化而来的面相对象语言,两者都兼容标准C语言 2.两者的最大不同:Objective-C提供了运行期动态绑定机制,而C++是编译静态绑定,并且通过嵌入类(多重继承)和虚函数 ...
- golang时间
//获取本地location toBeCharge := "2015-01-01 00:00:00" //待转化为时间戳的字符串 注意 这里的小时和分钟还要秒必须写 因为是跟着模板 ...
- Maven——使用Maven构建多模块项目
原文:http://www.cnblogs.com/xdp-gacl/p/4242221.html 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为doma ...
- Linux 系统时间查看 及 时区修改(自动同步时间)
1:使用date命令查看时区 [root@db-server ~]# date -R Sun, 11 Jan 2015 07:10:28 -0800 [root@db-server ~]# ...
- 工作流学习——Activiti整体认识二步曲 (zhuan)
http://blog.csdn.net/zwk626542417/article/details/46594505 ***************************************** ...
- Mybatis 级联查询 (一对多 )
后台系统中 涉及到添加试卷 问题 答案的一个模块的.我需要通过试卷 查询出所有的试题,以及试题的答案.这个主要要使用到Mybatis的级联查询. 通过试卷 查询出与该试卷相关的试题(一对多),查询出试 ...
- 20160816_Redis一些资料
1.官网 http://redis.io/ 2.一个教程 http://www.yiibai.com/redis/redis_quick_guide.html 3.快速开始指南(Quick Start ...
- git reset 理解
http://www.open-open.com/lib/view/open1397013992747.html 一般在工作中用的比较多的是: git reset --hard <commitI ...
- Open-falon监控安装过程
Open-falon监控安装过程 具体参考: http://book.open-falcon.org/zh/quick_install/prepare.html 1. 安装ntp.vim编辑器 ...