博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
web.xml配置文件详解
阅读量:4041 次
发布时间:2019-05-24

本文共 3415 字,大约阅读时间需要 11 分钟。

启动一个WEB项目时,WEB容器首先会读取项目web.xml配置文件里的配置,当这一步骤没有出错并且完成之后,项目才能正常地被启动起来。

例子:

300
404
/error.jsp
java.lang.NullException
/error.jsp
log4jConfigLocation
classpath:log4j.properties
log4jRefreshInterval
60000
org.springframework.web.util.Log4jConfigListener
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
encodingFilter
/*
loginFilter
com.keymen.web.filter.OperatorLoginFilter
loginFilter
*.jsp
loginFilter
*.action
contextConfigLocation
classpath:*Context.xml
org.springframework.web.context.ContextLoaderListener
com.keymen.listener.ApplicationInitListener
com.keymen.listener.SessionCreateListener
org.springframework.web.util.IntrospectorCleanupListener
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
struts2
/*
verifycode
com.keymen.util.image.ImageServlet
verifycode
/verifycode.gif
index.jsp

关于schema

web.xml的模式文件是由Sun公司定义的,每个web.xml文件的根元素中,都必须标明这个 web.xml使用的是哪个模式文件。其它的元素都放在之中。

Listener的配置

为web应用程序定义监听器,监听器用来监听各种事件,比如:application和session事件,所有的监听器按照相同的方式定义,功能取决去它们各自实现的接口,常用的Web事件接口有如下几个:

  • ServletContextListener:用于监听Web应用的启动和关闭;
  • ServletContextAttributeListener:用于监听ServletContext范围(application)内属性的改变;
  • ServletRequestListener:用于监听用户的请求;
  • ServletRequestAttributeListener:用于监听ServletRequest范围(request)内属性的改变;
  • HttpSessionListener:用于监听用户session的开始和结束;
  • HttpSessionAttributeListener:用于监听HttpSession范围(session)内属性的改变。

主要用于监听Web应用事件,其中有两个比较重要的WEB应用事件:应用的启动和停止(starting up or shutting down)和Session的创建和失效(created or destroyed)。应用启动事件发生在应用第一次被Servlet容器装载和启动的时候;停止事件发生在Web应用停止的时候。Session创建事件发生在每次一个新的session创建的时候,类似地Session失效事件发生在每次一个Session失效的时候。为了使用这些Web应用事件做些有用的事情,我们必须创建和使用一些特殊的“监听类”。它们是实现了以下两个接口中任何一个接口的简单java类:javax.servlet.ServletContextListener或javax.servlet.http.HttpSessionListener,如果想让你的类监听应用的启动和停止事件,你就得实现ServletContextListener接口;想让你的类去监听Session的创建和失效事件,那你就得实现HttpSessionListener接口。

转载地址:http://zqvdi.baihongyu.com/

你可能感兴趣的文章
nginx+tomcat+memcached (msm)实现 session同步复制
查看>>
c++字符数组和字符指针区别以及str***函数
查看>>
c++类的操作符重载注意事项
查看>>
c++模板与泛型编程
查看>>
WAV文件解析
查看>>
WPF中PATH使用AI导出SVG的方法
查看>>
WPF UI&控件免费开源库
查看>>
QT打开项目提示no valid settings file could be found
查看>>
Win10+VS+ESP32环境搭建
查看>>
Ubuntu+win10远程桌面
查看>>
flutter-实现圆角带边框的view(android无效)
查看>>
android 代码实现圆角
查看>>
flutter-解析json
查看>>
android中shader的使用
查看>>
java LinkedList与ArrayList迭代器遍历和for遍历对比
查看>>
drat中构造方法
查看>>
JavaScript的一些基础-数据类型
查看>>
JavaScript基础知识(2)
查看>>
转载一个webview开车指南以及实际项目中的使用
查看>>
android中对于非属性动画的整理
查看>>