servlet配置

一个完整的servlet配置分为两块,< servlet >块和< servlet-mapping >块

< servlet >

<servlet>
<servlet-name>NameIsServletTest</servlet-name> <!-- 该servlet标识名,与servlet-mapping中的标识名对应 组成配对 -->
<servlet-class>com.qq.web.servlet.ServletTest</servlet-class> <!-- 该servlet全类名 -->
<init-param> <!-- 初始化参数 -->
<param-name>paramName</param-name> <!-- 初始化参数 键-->
<param-value>paramValue</param-value> <!-- 初始化参数 值-->
</init-param>
<init-param> <!-- 初始化参数 可配置多个-->
<param-name>paramName2</param-name>
<param-value>paramValue2</param-value>
</init-param>
</servlet>

< servlet-mapping >

<servlet-mapping>
<servlet-name>NameIsServletTest</servlet-name> <!-- 与上面<servlet>下的<servlet-name>一致组成配对 -->
<url-pattern>/test</url-pattern> <!-- 该servlet路由配置 -->
</servlet-mapping>

InitParameter获取初始化参数

    Enumeration<String> en1 = getInitParameterNames();      // getInitParameterNames()获取初始化参数的key枚举
while (en1.hasMoreElements()) {
String key = en1.nextElement();
System.out.println("en1-----value:"+getInitParameter(key)); // getInitParameter(key)通过key获取初始化参数的值
} // 其实和上面是一样的
Enumeration<String> en2 = getServletConfig().getInitParameterNames(); // 使用getServletConfig().getInitParameterNames()获取初始化参数的key枚举
while (en2.hasMoreElements()) {
String key2 = en2.nextElement();
System.out.println("en2-----value:"+getInitParameter(key2));
}

filter配置

同servlet完整的filter配置也分为两块,< filter >与< filter-mapping >

< filter >

<filter>
<filter-name>FilterTest</filter-name> <!-- filter标识名 -->
<filter-class>com.qq.web.filter.FilterTest</filter-class> <!--filter全类名-->
<init-param> <!--初始化参数-->
<param-name>filterName</param-name>
<param-value>filterValue</param-value>
</init-param>
</filter>

< filter-mapping >

 <filter-mapping>
<filter-name>FilterTest</filter-name> <!-- 标识名与上面的相同组成配对 -->
<url-pattern>/*</url-pattern> <!-- 匹配要过滤的请求url -->
<!--
/* , /login/* 模糊匹配 前面对上了就ok
/index ,/login 全路径匹配 全部对上才行
*.html ,*.js 扩展名匹配,后面对上就ok,注意前面不能与 /
如果一个url能匹配上多个过滤器
过滤器都在xml中配置的话 按配置的前后顺序执行
过滤器都在注解上配置的 按过滤器类名的字母排序执行
都有的话 先执行xml中配置的再执行注解配置的
-->
<!-- 过滤器拦截的请求类型 -->
<dispatcher>REQUEST</dispatcher> <!-- http请求 不写默认时这个 -->
<dispatcher>FORWARD</dispatcher> <!-- 请求转发 -->
<dispatcher>INCLUDE</dispatcher> <!-- jsp包含 -->
<dispatcher>ERROR</dispatcher> <!-- err时跳转 -->
</filter-mapping>

filter获取初始化参数

 public void init(FilterConfig config) throws ServletException {      // 在过滤器的init方法中用config获取初始化参数
Enumeration<String> filterEn1 = config.getInitParameterNames();
while (filterEn1.hasMoreElements()){
System.out.println(config.getInitParameter(filterEn1.nextElement()));
}
}

上下文初始化参数

<context-param>      <!-- 只能有一对键值用作应用的Servlet上下文初始化参数,参数名在整个Web应用中必须是惟一的,任意的Servlet和jsp都可以随时随地访问它 -->
<param-name>contextName</param-name>
<param-value>contextValue</param-value>
</context-param> // 获取上下文初始化参数
Enumeration<String> contextEn = getServletContext().getInitParameterNames(); // 全局的资源都在getServletContext()这里
while (contextEn.hasMoreElements()) {
System.out.println("context-----value:"+getServletContext().getInitParameter(contextEn.nextElement()));
}

web.xml之servlet与filter配置的更多相关文章

  1. JavaWeb项目中web.xml有关servlet的基本配置

    JavaWeb项目中web.xml有关servlet的基本配置: 我们注意到,tomcat下的conf中也有一个web.xml文件,没错的,所有的JavaWeb项目中web.xml都继承自服务器下的w ...

  2. java web.xml listener servlet 和filter加载顺序

    在该项目中总会遇到一些关于加载的优先问题.最近遇到了同样的类别似的,所以,如果你发现信息汇总下,以下是转载其他一些人,毕竟,人们写的不错.它不重复创建的轮.只是略作修改自己的观点. 首先能够肯定的是, ...

  3. web.xml中servlet, bean, filter, listenr 加载顺序汇总

    最终得出结果:先 listener >> filter >> servlet >> spring 所以,如果过滤器中要使用到 bean,可以将spring 的加载 ...

  4. Spring-web中的web.xml为Servlet提供的配置选项说明

    配置Servlet时可以设置的一些初始化参数,总结如下: ContextAttribute: 在ServletContext的属性中,要用作WebApplicationContext的属性名称. Co ...

  5. eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servlet>

    eclipse环境Dynamic web module version 3.1版本之前,Dynamic web object 中Servlet类的配置,要在web.xml 配置<Servlet& ...

  6. Java Web的web.xml文件作用及基本配置(转)

    其实web.xml就是asp.net的web.config一个道理. 说明: 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的. web.xml文件是用来 ...

  7. web.xml的加载过程配置详解

      一:web.xml加载过程 简单说一下,web.xml的加载过程.当我们启动一个WEB项目容器时,容器包括(JBoss,Tomcat等).首先会去读取web.xml配置文件里的配置,当这一步骤没有 ...

  8. 【转载】Java Web的web.xml文件作用及基本配置

    其实web.xml就是asp.net的web.config一个道理. 说明: 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的. web.xml文件是用来 ...

  9. 第7章—SpringMVC高级技术—不用web.xml,而使用java类配置SpringMVC

    不用web.xml,而使用java类配置SpringMVC DispatcherServlet是Spring MVC的核心,按照传统方式, 需要把它配置到web.xml中. 我个人比较不喜欢XML配置 ...

随机推荐

  1. lora技术在电力行业的应用

    智能电网的目标是建立一个高速通信网络之上的传统电网.它通过传感,分析,预测,决策和控制提供稳定,高效的电力供应.传统电网分为三个主要区域S-发电,输电和配电.先进的计量系统是使这种传统电网智能化的基础 ...

  2. OpenCascade拓扑对象之:TopoDS_Shape的三要素

    @font-face { font-family: "Times New Roman" } @font-face { font-family: "宋体" } @ ...

  3. Java中final修饰的方法是否可以被重写

    这是一次阿里面试里被问到的题目,在我的印象中,final修饰的方法是不能被子类重写的.如果在子类中重写final修饰的方法,在编译阶段就会提示Error.但是回答的时候还是有点心虚的,因为final变 ...

  4. python框架Django中MTV框架之VIew(业务控制器)

    MTV框架之VIew(业务控制器) 关注公众号"轻松学编程"了解更多. 1.什么是视图 视图层=路由表(urls.py)+视图函数(views.py) 其角色相当于MVC中的Con ...

  5. python求平均数及打印出低于平均数的值列表

    刚学Python的时候还是要多动手进行一些小程序的编写,要持续不断的进行,知识才能掌握的牢.今天就讲一下Python怎么求平均数,及打印出低于平均数的数值列表 方法一: scores1 =  [91, ...

  6. C语言经典100例-ex002

    系列文章<C语言经典100例>持续创作中,欢迎大家的关注和支持. 喜欢的同学记得点赞.转发.收藏哦- 后续C语言经典100例将会以pdf和代码的形式发放到公众号 欢迎关注:计算广告生态 即 ...

  7. 揭秘仿比心app源码的开发背后,功能是如何实现的

    约单陪玩系统作为最近兴起的开发热点,引起了竞相开发,其中比心源码可以说是行业内运营级别的APP中功能比较齐全的,那么仿比心app源码的功能是如何实现的呢,接下来就带大家简单分析一下. 仿比心app源码 ...

  8. 【转载】图解Transformer(完整版)!

    在学习深度学习过程中很多讲的不够细致,这个讲的真的是透彻了,转载过来的,希望更多人看到(转自-张贤同学-公众号). 前言 本文翻译自 http://jalammar.github.io/illustr ...

  9. 强迫自己学习Jquery 最喜欢的hitch函数

    用过dojo的人都知道hitch. 通过绑定一个函数的上下文得到一个新函数,当然还能绑定参数 Jquery里没有这个功能,实在太不方便了. 这是我不喜欢用Jquery的第一原因,第二原因是Jquery ...

  10. 栈(Stack)和队列(Queue)是两种操作受限的线性表。

    (线性表:线性表是一种线性结构,它是一个含有n≥0个结点的有限序列,同一个线性表中的数据元素数据类型相同并且满足"一对一"的逻辑关系. "一对一"的逻辑关系指的 ...