当我们学完了JavaSe部分的知识之后,如果我们往Web方面发展和学习的话,我们将会接触到一个非常重要的web技术——Servlet。在说明Servlet的配置之前我们先来了通过下面的请求响应图解一下Servlet的生命周期。

由上面的图我们可以很容易知道Servlet的生命周期,就是tomcat服务器在第一次接收到客户端发送请求的时候,会去创建一个Servlet对象,然后执行Servlet对象的init方法进行一些初始化配置,然后将客户端发送的请求创建HttpRequst对象进行封装,创建HttpResponse对象来封装Servlet响应的数据信息,然后去执行service方法,将执行的结果交给tomcat服务器去给客户端返回响应。在第一次创建Servlet对象之后,这个Servlet对象将一直驻留在内存中,知道服务器停止时,会执行destroy方法,销毁Servlet对象。

接下来我们就来看下如何在web.xml中配置我们的Servlet。

    <servlet>
<!-- 这里配置Servlet的名字,可以随便写,一般都保持和类名一致 -->
<servlet-name>FirstServlet</servlet-name>
<!-- 配置Servlet的全类名 -->
<servlet-class>com.servlet.FirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<!-- 这里需要和上面里面的配置的 servlet-name保持一致 -->
<servlet-name>FirstServlet</servlet-name>
<!-- 这里配置外界访问的地址 -->
<url-pattern>/first/one.do</url-pattern>
</servlet-mapping>

这样一个最简单的Servlet在web.xml中的配置已经配好了。当然一个<servlet>可以有配置多个<servlet-mapping>。

我们还可以在<servlet>标签中配置该servlet的启动顺序,可以通过下面的方式进行配置

<!-- 这里配置Servlet的启动顺序,不配置,默认是第一次收到请求时,由服务器进行创建 -->
<!-- 之后驻留在内存中,直到服务器停止,执行destroy方法,进行销毁 -->
<load-on-startup>1</load-on-startup>

有时候我们有些东西,不喜欢写死,可以动态的修改,而不需要修改源代码,这时候我们就可以在<servlet>标签中配置一些初始化参数,用来对servlet在创建的时候进行初始化,比如一些编码信息、数据库的连接信息、需要读取外部的配置文件信息等可以通过以下方式进行配置

<!-- 配置初始化参数 -->
<init-param>
<!-- 参数的名称 -->
<param-name>charset</param-name>
<!-- 参数的值 -->
<param-value>UTF-8</param-value>
</init-param>

然后在方法中通过ServletConfig对象的getInitParameter方法就可以获取到我们配置的初始化参数了

//传入参数名称charset,获取参数值
String charactor= this.getServletConfig().getInitParameter("charset");

至此Servlet的基本配置方法已经说完了,有不足的地方,希望大家多多提意见!

Servlet——总结的更多相关文章

  1. servlet文件下载

    创建web工程servlet,新建DownloadServlet.java package com.xmyself.servlet; import java.io.File; import java. ...

  2. java中servlet的各种路径

    1. web.xml中<url-pattern>路径,(叫它Servlet路径!) > 要么以“*”开关,要么为“/”开头 2. 转发和包含路径 > *****以“/”开头:相 ...

  3. Servlet监听器笔记总结

    监听器Listener的概念 监听器的概念很好理解,顾名思义,就是监视目标动作或状态的变化,目标一旦状态发生变化或者有动作,则立马做出反应. Servlet中的也有实现监听器的机制,就是Listene ...

  4. JavaWeb——Servlet

    一.基本概念 Servlet是运行在Web服务器上的小程序,通过http协议和客户端进行交互. 这里的客户端一般为浏览器,发送http请求(request)给服务器(如Tomcat).服务器接收到请求 ...

  5. servlet 简介,待完善

    什么是Servlet?① Servlet就是JAVA 类② Servlet是一个继承HttpServlet类的类③ 这个在服务器端运行,用以处理客户端的请求 Servlet相关包的介绍--javax. ...

  6. java web学习总结(五) -------------------servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  7. servlet使用入门

    创建web工程servlet,然后新建TestServlet.java package com.xmyself.servlet; import java.io.IOException; import ...

  8. 基于jsp+servlet图书管理系统之后台万能模板

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

  9. [Servlet] 初识Servlet

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

  10. Java Servlet+Objective-c图上传 步骤详细

    一. Servlet 1.创建图片保存的路径 在项目的WebContent下创建一个上传图片的专属文件夹. 这个文件夹创建后,我们保存的图片就在该文件夹的真实路径下,但是在项目中是无法看到上传的图片的 ...

随机推荐

  1. pandas数据处理基础——基础加减乘除的运算规则

    上周公司对所有员工封闭培训了一个星期,期间没收手机,基本上博客的更新都停止了,尽管培训时间不长,但还是有些收获,不仅来自于培训讲师的,更多的是发现自己与别人的不足,一个优秀的人不仅仅是自己专业那块的精 ...

  2. 各种MQTT server功能比較

    this page attempts to document the features that various MQTT servers (brokers) support. This is spe ...

  3. zookeeper(五):Zookeeper中的Access Control(ACL)

    概述 传统的文件系统中,ACL分为两个维度,一个是属组,一个是权限,子目录/文件默认继承父目录的ACL.而在Zookeeper中,node的ACL是没有继承关系的,是独立控制的. Zookeeper的 ...

  4. django rest framework(10)

    1.权限 2.认证 3.访问频率限制 4.序列化 5.路由 6.视图 7.分页 8.解析器 9.渲染器 10.版本 面试题:你写的类都继承过哪些类? class Vive(object): class ...

  5. 新标准C++程序设计读书笔记_类和对象

    面向对象的程序设计方法 抽象:将某类客观事物共同特点(属性)归纳出来,形成一个数据结构(可以用多个变量描述事物的属性):将这类事物所能进行的行为也归纳出来,形成一个个函数,这些函数可以用来操作数据结构 ...

  6. 把一个project相关的jar放到project的lib文件夹中

    例如你有一个project名为xxx,/xxx 文件夹中有src.bin.等等,然后你手工创建一个lib文件夹,这样你就把解压出来的第三方lib(jar包,含javadoc)都放到lib文件夹中,这样 ...

  7. Error occurred whiLe getting the data source contents for the report

    Web service request GetDataSourceContents to Report Server http://crm-vm/reportserver/ReportService2 ...

  8. Zookeeper实战

    这里的实战主要是用Java API对Zookeeper进行相应的操作,来实现我们的业务需求.首先简单地测试一下Zookeeper节点的增删改查操作,然后测试两个例子,分别是分布式应用HA以及分布式锁. ...

  9. 【复习】密码算法——AES

    0 AES简介 1997年1月2号,美国国家标准技术研究所宣布希望征集一个安全性能更高的加密算法(AES)[3],用以取代DES.我们知道DES的密钥长度是64 bits,但实际加解密中使用的有效长度 ...

  10. 【BZOJ】3315: [Usaco2013 Nov]Pogo-Cow(dp)

    http://www.lydsy.com/JudgeOnline/problem.php?id=3315 果然自己太弱. 想不出dp方程啊.. 其实,以后记住...与上一个状态或下一个状态有关,,可以 ...