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初识的更多相关文章

  1. [Servlet] 初识Servlet

    什么是Servlet? 定义 Servlet的全称是 Server Applet,顾名思义,就是用 Java 编写的服务器端程序. Servlet 是一个 Java Web开发标准,狭义的Servle ...

  2. servlet初识servletConfig

    package day09; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; ...

  3. 初识Servlet

    1.创建DispatcherServlet package myservlet; import java.io.IOException; import javax.servlet.ServletExc ...

  4. 初识Jsp,JavaBean,Servlet以及一个简单mvc模式的登录界面

    1:JSP JSP的基本语法:指令标识page,include,taglib;page指令标识常用的属性包含Language用来定义要使用的脚本语言:contentType定义JSP字符的编码和页面响 ...

  5. Servlet之初识

    doHeader 用于处理HEADER请求doGet 用于处理GET请求,也可以自动的支持HEADER请求doPost 用于处理POST请求 doPut 用于处理PUT请求 doDelete 用于处理 ...

  6. 初识JAVA,对servlet的理解

    一.WEB开发的简单理解 Web开发是一个指代网页或站点编写过程的广义术语.网页使用 HTML.CSS 和 JavaScript编写.这些页面可能是类似于文档的简单文本和图形.页面也能够是交互式的,或 ...

  7. servlet学习总结(一)——初识Servlet

    Servlet工作过程 当客户端向web服务器发送servlet请求时,web服务器首先检查是否已经加载并创建了servlet实例对象.如果没有会装载并创建该Servlet的一个实例对象.然后调用se ...

  8. [Servlet&JSP] 初识ServletContext

    ServletContext是整个Web应用程序运行后的代表对象,能够通过ServletConfig的getServletContext()方法来取得,之后就能够利用ServletContext来取得 ...

  9. 初识Java Servlet

    Java Servlet是什么? Servlet的本质就是一个Java接口,之所以能生成动态的Web内容,是因为对客户的一个HTTP请求,Servlet通过接口这个规范重写了其中的方法,然后Web服务 ...

随机推荐

  1. ajax小技巧,防止多次点击发送多个请求

    var isAjax=false;$("btn").click(function(){ if(isAjax) return; isAjax=true; setTimeout(fun ...

  2. Objective-C与C++的区别

    1.两者的最大相同:都是从C演化而来的面相对象语言,两者都兼容标准C语言 2.两者的最大不同:Objective-C提供了运行期动态绑定机制,而C++是编译静态绑定,并且通过嵌入类(多重继承)和虚函数 ...

  3. golang时间

    //获取本地location toBeCharge := "2015-01-01 00:00:00" //待转化为时间戳的字符串 注意 这里的小时和分钟还要秒必须写 因为是跟着模板 ...

  4. Maven——使用Maven构建多模块项目

    原文:http://www.cnblogs.com/xdp-gacl/p/4242221.html 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为doma ...

  5. Linux 系统时间查看 及 时区修改(自动同步时间)

    1:使用date命令查看时区 [root@db-server ~]# date -R   Sun, 11 Jan 2015 07:10:28 -0800   [root@db-server ~]#   ...

  6. 工作流学习——Activiti整体认识二步曲 (zhuan)

    http://blog.csdn.net/zwk626542417/article/details/46594505 ***************************************** ...

  7. Mybatis 级联查询 (一对多 )

    后台系统中 涉及到添加试卷 问题 答案的一个模块的.我需要通过试卷 查询出所有的试题,以及试题的答案.这个主要要使用到Mybatis的级联查询. 通过试卷 查询出与该试卷相关的试题(一对多),查询出试 ...

  8. 20160816_Redis一些资料

    1.官网 http://redis.io/ 2.一个教程 http://www.yiibai.com/redis/redis_quick_guide.html 3.快速开始指南(Quick Start ...

  9. git reset 理解

    http://www.open-open.com/lib/view/open1397013992747.html 一般在工作中用的比较多的是: git reset --hard <commitI ...

  10. Open-falon监控安装过程

    Open-falon监控安装过程   具体参考:   http://book.open-falcon.org/zh/quick_install/prepare.html 1. 安装ntp.vim编辑器 ...