本篇文章为你整理了学习笔记——过滤器链;监听器;Servlet、Filter、Listener的注解方式开发()的详细内容,包含有 学习笔记——过滤器链;监听器;Servlet、Filter、Listener的注解方式开发,希望能帮助你了解 学习笔记——过滤器链;监听器;Servlet、Filter、Listener的注解方式开发。
一、过滤器链
1、含义:如果出现一个请求存在多个过滤器对其过滤,出现过滤器链。
在放行前,过滤器是正序执行,放行后过滤器是倒序执行。
2、过滤器的顺序:是与filter-mapping配置上下文位置有关
二、监听器
1、作用范围:
(1)监听域对象的创建和销毁
域对象:
①ServletContext:应用域(对象是web项目加载时创建,web项目卸载时销毁),监听器接口是“ServletContextListener”。
②HttpSession:会话域(第一次调用getSession创建,销毁是强制销毁),监听器接口是“HttpSessionListener”。
③HttpServletRequest:请求域(有请求就创建,响应结束就销毁),监听器接口是“HttpServletRequestListener”。
(2)监听域对象内共享数据的添加、修改、删除
①添加数据:setAttribute
②删除数据:removeAttribute
③修改数据:setAttribute (如果key值存在,此方法就是修改数据)
2、创建监听器
(1)创建一个类
先创建一个“web Application”的项目,删除“index.jsp”.在src文件夹下的“com.hh”下创建一个类“listener.HelloListener”
(2)实现一个接口
例如“ServletContextListener”
(3)实现接口中的抽象函数
public class HelloListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
System.out.println("ServletContext对象创建后执行此方法");
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
System.out.println("ServletContext对象销毁后执行此方法");
}
(4)注册监听器
在“WEB-INF”文件夹下的“web.xml”中
listener
listener-class com.hh.listener.HelloListener /listener-class
/listener
三、Servlet、Filter、Listener的注解方式开发
功能:替代配置文件的。
1、Servlet的注解
(1)位置:在类的上方
(2)代码:
@WebServlet(name="HelloServlet",value="/hello")
注:name就相当于配置文件中的“servlet-name”的值;value就相当于配置文件中“url-pattern”的值
简写形式:name可以省略,当只剩下“value”属性,属性名可以省略,即:
@WebServlet("/hello")
2、Filter的注解
(1)位置:类的上方
(2)代码:
@WebFilter(filterName = "HelloFilter",urlPatterns = "/hello")
3、Listener的注解
(1)位置:类的上方
(2)代码:
@WebListener
以上就是学习笔记——过滤器链;监听器;Servlet、Filter、Listener的注解方式开发()的详细内容,想要了解更多 学习笔记——过滤器链;监听器;Servlet、Filter、Listener的注解方式开发的内容,请持续关注盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。