package sanglp.servlet;

 import javax.servlet.*;
import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpServletRequest; /**
* Created by Administrator on 2016/10/5.
*/
@WebListener
public class RequestListener implements ServletRequestListener,ServletRequestAttributeListener { //用户请求到底,被初始化时触发该方法
@Override
public void requestInitialized(ServletRequestEvent servletRequestEvent) {
HttpServletRequest request=(HttpServletRequest)servletRequestEvent.getServletRequest();
System.out.println("发向"+request.getRequestURI()+"请求被初始化");
}
//用户请求到底,被销毁时触发该方法
@Override
public void requestDestroyed(ServletRequestEvent servletRequestEvent) {
HttpServletRequest request=(HttpServletRequest)servletRequestEvent.getServletRequest();
System.out.println("发向"+request.getRequestURI()+"请求被销毁"); } @Override
public void attributeAdded(ServletRequestAttributeEvent servletRequestAttributeEvent) {
ServletContext application=servletRequestAttributeEvent.getServletContext();
//获取添加的属性名和属性值
String name=servletRequestAttributeEvent.getName();
Object value=servletRequestAttributeEvent.getValue();
System.out.println(application+"范围内添加了"+name+"值为"+value+"的属性"); } @Override
public void attributeRemoved(ServletRequestAttributeEvent servletRequestAttributeEvent) {
ServletContext application=servletRequestAttributeEvent.getServletContext();
//获取添加的属性名和属性值
String name=servletRequestAttributeEvent.getName();
Object value=servletRequestAttributeEvent.getValue();
System.out.println(application+"范围内删除了"+name+"值为"+value+"的属性");
} @Override
public void attributeReplaced(ServletRequestAttributeEvent servletRequestAttributeEvent) {
ServletContext application=servletRequestAttributeEvent.getServletContext();
//获取添加的属性名和属性值
String name=servletRequestAttributeEvent.getName();
Object value=servletRequestAttributeEvent.getValue();
System.out.println(application+"范围内替换了"+name+"值为"+value+"的属性");
}
}

【JavaEE企业应用实战学习记录】requestListener的更多相关文章

  1. 【JavaEE企业应用实战学习记录】optiontransferselect实现两个列表选择框

    <%@ page contentType="text/html; charset=GBK" language="java"%> <%@tagl ...

  2. 【JavaEE企业应用实战学习记录】logFilter

    package sanglp.servlet; import javax.servlet.*; import javax.servlet.annotation.WebFilter; import ja ...

  3. 【JavaEE企业应用实战学习记录】struts2实现登录并获取各个范围的数据

    package sanglp; import com.opensymphony.xwork2.*; /** * Created by Administrator on 2016/10/6. */ pu ...

  4. 【JavaEE企业应用实战学习记录】struts配置文件详细解析

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-/ ...

  5. 【JavaEE企业应用实战学习记录】struts2登录

    <%-- login.jsp Created by IntelliJ IDEA. User: Administrator Date: 2016/10/6 Time: 16:26 To chang ...

  6. 【JavaEE企业应用实战学习记录】struts国际化

    <%-- Created by IntelliJ IDEA. User: Administrator Date: 2016/10/6 Time: 16:26 To change this tem ...

  7. 【JavaEE企业应用实战学习记录】servlet3.0上传文件

    <%-- Created by IntelliJ IDEA. User: Administrator Date: 2016/10/6 Time: 14:20 To change this tem ...

  8. 【JavaEE企业应用实战学习记录】sessionListener

    package sanglp.servlet; import javax.servlet.ServletContext; import javax.servlet.annotation.WebList ...

  9. 【JavaEE企业应用实战学习记录】MyGetAttributeListener

    package sanglp.servlet; import javax.servlet.ServletContext; import javax.servlet.ServletContextAttr ...

随机推荐

  1. 150924-还是起得来床的好-HTML(CSS)

    一早醒来是9:10,这些天最晚的了,也可能是睡的最爽的了. 不废话,早上Matlab仿真干不出来,不如学学html,上代码~ <!DOCTYPE HTML><html>< ...

  2. 设计模式(java) 单例模式 单例类

    ·单例类 单实例类,就是这个类只能创建一个对象,保证了对象实例的唯一性. 1.单例模式( Singleton Pattern) 是一个比较简单的模式, 其定义如下:Ensure a class has ...

  3. No resource found that matches the given name 'Theme.AppCompat.Light 的完美解决方案

    No resource found that matches the given name 'Theme.AppCompat.Light 的完美解决方案 首先这个问题的产生是由于缺少Theme.App ...

  4. Notes on <Assembly Language step by step>

    By brant-ruan Yeah, I feel very happy When you want to give up, think why you have held on so long. ...

  5. Unity热门插件推荐

    前言 Unite2015的笔记 ,本文所提到的扩展主要针对 mobile上使用. 文中资源在Asset Store描述的截图日期:2016-04-28 Mesh Baker https://www.a ...

  6. Windows 批处理(bat)语法大全

    本文是学习bat整理的笔记,由于内容较多,建议结合右侧文章大纲查看. %~dp0[获取当前路径] %~dp0 “d”为Drive的缩写,即为驱动器,磁盘.“p”为Path缩写,即为路径,目录 cd % ...

  7. java自带线程池和队列详细讲解

    Java线程池使用说明 一简介 线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的.在jdk1.5之后这一情况有了很大的改观.Jdk1.5之后 ...

  8. [No000022]他们说:得诺贝尔奖到底有多难?

  9. luogu1207双重回文数[usaco1.2]Dual Palindromes

    题目描述 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”.例如,12321就是一个回文数,而77778就不是.当然,回文数的首和尾都应是非零的,因此0220就不是回文数. 事实上 ...

  10. python的高级特性3:神奇的__call__与返回函数

    __call__是一个很神奇的特性,只要某个类型中有__call__方法,,我们可以把这个类型的对象当作函数来使用. 也许说的比较抽象,举个例子就会明白. In [107]: f = abs In [ ...