您现在的位置是:主页 > news > 动感网站模板/品牌建设

动感网站模板/品牌建设

admin2025/6/24 7:14:53news

简介动感网站模板,品牌建设,做网站被骗属于诈骗吗,南岸网站建设监听器也是Servlet三大组件之一。监听器可以监听一些对象或对象属性状态的变化。 目录Web事件:监听对象状态的监听器监听对象属性状态的监听器零配置(注解)Web事件: 事件源:Web对象,例如:HttpS…

动感网站模板,品牌建设,做网站被骗属于诈骗吗,南岸网站建设监听器也是Servlet三大组件之一。监听器可以监听一些对象或对象属性状态的变化。 目录Web事件:监听对象状态的监听器监听对象属性状态的监听器零配置(注解)Web事件: 事件源:Web对象,例如:HttpS…

监听器也是Servlet三大组件之一。监听器可以监听一些对象或对象属性状态的变化。

目录

  • Web事件:
  • 监听对象状态的监听器
  • 监听对象属性状态的监听器
  • 零配置(注解)

Web事件:

  • 事件源:Web对象,例如:HttpSession对象、ServletRequest对象、ServletContext对象。
  • 事件类型:ServletContextEvent、ServletRequestEvent、HttpSessionEvent、ServletContextAttributeEvent、ServletRequestAttributeEvent、HttpSessionAttributeEvent。
  • 事件监听器:ServletContextListener、ServletRequestListener、HttpSessionListener、ServletContextAttributeListener、ServletRequestAttributeListener、HttpSessionAttributeListener。
  • 处理函数:监听器中的一些处理方法。

监听对象状态的监听器

ServletContextListener:监听Servlet对象状态的监听器。

HttpSessionListener:监听Session对象状态的监听器。

ServletRequestListener:监听Request对象状态的监听器。


下面以ServletContextListener为例介绍:

ServletContextListener用于监听ServletContext对象状态的变化。例如:创建ServletContext,销毁ServletContext。当项目启动的时候,容器会创建ServletContext对象,如果配置了ServletContextListener监听器,那么就可以在项目启动的时候加入一些处理。

  • 使用监听器的步骤:

第一步:定义一个类,实现监听器接口,并实现监听器的所有方法;

public class ContextListener implements ServletContextListener {@Overridepublic void contextInitialized(ServletContextEvent servletContextEvent) {System.out.println("ServletContext被创建...");}@Overridepublic void contextDestroyed(ServletContextEvent servletContextEvent) {System.out.println("ServletContext被销毁...");}
}

第二步:在web.xml中配置监听器;

<listener><listener-class>com.tung.listener.ContextListener</listener-class></listener>

监听对象属性状态的监听器

ServletContextAttributeListener:监听Servlet对象属性状态的监听器。

HttpSessionAttributeListener:监听Session对象属性状态的监听器。

ServletRequestAttributeListener:监听Request对象属性状态的监听器。


下面以HttpSessionAttributeListener为例介绍:

HttpSessionAttributeListener用于监听Sessiont对象属性状态的变化。例如:添加属性、删除属性、修改属性。

public class SessionAtrributeListener implements HttpSessionAttributeListener {// 往Session对象中添加属性的时候自动调用@Overridepublic void attributeAdded(HttpSessionBindingEvent httpSessionBindingEvent) {System.out.println("添加属性");System.out.println("属性名:"+httpSessionBindingEvent.getName());System.out.println("属性值:"+httpSessionBindingEvent.getValue());}// 往Session对象中删除属性的时候自动调用@Overridepublic void attributeRemoved(HttpSessionBindingEvent httpSessionBindingEvent) {System.out.println("删除属性");System.out.println("属性名:"+httpSessionBindingEvent.getName());System.out.println("属性值:"+httpSessionBindingEvent.getValue());}// 往Session对象中修改属性的时候自动调用@Overridepublic void attributeReplaced(HttpSessionBindingEvent httpSessionBindingEvent) {System.out.println("修改属性");System.out.println("属性名:"+httpSessionBindingEvent.getName());System.out.println("属性值:"+httpSessionBindingEvent.getValue());}
}

配置属性监听器
在web.xml配置属性监听器

<listener><listener-class>com.tung.listener.SessionAtrributeListener</listener-class></listener>

零配置(注解)

@WebListener配置监听器。

@WebListener
public class SessionAtrributeListener implements HttpSessionAttributeListener {}