当我们学完了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的基本配置方法已经说完了,有不足的地方,希望大家多多提意见!

最新文章

  1. jQuery使用之(一)标记元素属性
  2. python实现简单随机模拟——抛呀抛硬币
  3. 安装mysql-5.7.9-winx64
  4. C# RichTextBox 获取当前显示部分的文字
  5. 一个简单的Hibernate工具类HibernateUtil
  6. hibernate spring sturts2配置
  7. android 05
  8. Lambda表达式和Java集合框架
  9. TIME_WAIT 另一种解决方式 SO_LINGER
  10. 同步博客—CSDN推广
  11. 网络通信 --&gt; select()用法
  12. Xcode中的调试工具栏简介
  13. 发送email
  14. 图片上传js
  15. Linux 控制CPU使用率
  16. 第10月第21天 手势识别 开屏广告 Xcode快捷键
  17. HighCharts设置图表背景透明
  18. flex拖动图片
  19. Java 验证码识别之多线程打码兔
  20. 拼凑sql语句另外一个方法

热门文章

  1. sklearn 中模型保存的两种方法
  2. Nginx(一):linux下安装nginx与配置
  3. Django--ORM基础
  4. [ tarjan + dfs ] poj 2762 Going from u to v or from v to u?
  5. JS高程3:函数表达式
  6. 关于Tensorflow 的数据读取环节
  7. linux学习笔记26--命令wc
  8. session用户账号认证(一个用户登陆,踢出前一个用户)
  9. JS——简单的正则表达式验证
  10. jQuery中bind函数绑定多个事件