监听器(request)的使用
监听器的使用:
-
作用:监听作用域对象request,session,application的创建,销毁和内容的改变
-
使用:创建了一个实现了接口的java类
-
监听request--->ServletRequestListener 监听request对象的销毁和创建
-
requestDestroyed //销毁
-
requestInitialized //创建
-
监听request--->ServletRequestAttributeListener 监听request作用域数据的变更
-
在web.xml中配置监听器
package com.ning.servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class TestServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取请求信息
//处理请求信息
request.setAttribute("str","监听器的认识");
//相应处理结果
response.getWriter().write("this is my listener");
}
}
package com.ning.listener;
import javax.servlet.ServletRequestAttributeEvent;
import javax.servlet.ServletRequestAttributeListener;
import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
/*
* 监听器的使用:
* 作用:监听作用域对象request,session,application的创建,销毁和内容的改变
* 使用:创建了一个实现了接口的java类
* 监听request--->ServletRequestListener 监听request对象的销毁和创建
* requestDestroyed //销毁
* requestInitialized //创建
* 监听request--->ServletRequestAttributeListener 监听request作用域数据的变更
*
* 在web.xml中配置监听器
*
*
* */
public class MyListener implements ServletRequestListener,ServletRequestAttributeListener {
//request对象销毁
@Override
public void requestDestroyed(ServletRequestEvent sre) {
System.out.println("我被销毁了");
}
//request对象创建
@Override
public void requestInitialized(ServletRequestEvent sre) {
System.out.println("我被创建了");
}
//监听request作用域数据的添加
@Override
public void attributeAdded(ServletRequestAttributeEvent srae) {
System.out.println("request中添加了一条数据-"+srae.getName()+":"+srae.getValue());
}
@Override
public void attributeRemoved(ServletRequestAttributeEvent srae) {
}
@Override
public void attributeReplaced(ServletRequestAttributeEvent srae) {
}
}
xml中的配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>ts</servlet-name>
<servlet-class>com.ning.servlet.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ts</servlet-name>
<url-pattern>/ts</url-pattern>
</servlet-mapping>
<!--配置监听器-->
<listener>
<listener-class>com.ning.listener.MyListener</listener-class>
</listener>
</web-app>