域对象属性监听器

本文记录Java学习过程中遇到的域对象属性监听器,这些对象都需要在web.xml中配置才能生效~

ServletRequest对象-ServletRequestAttributeListener

它有三个方法,分别监听ServletRequest对象中属性的添加、修改和删除,具体为:

  • attributeAdded(ServletRequestAttributeEvent srae):监听ServletRequest属性的添加;
  • attributeReplaced(ServletRequestAttributeEvent srae):监听ServletRequest属性的修改;
  • attributeRemoved(ServletRequestAttributeEvent srae):监听ServletRequest属性的删除。

注意:可以通过ServletRequestAttributeEvent的getName()和getValue()方法获取属性改变前的值,还可以通过getServletContext()和getServletRequest()方法获取相应的ServletContext和ServletRquest。

HttpSession对象-HttpSessionAttributeListener

它有三个方法,分别监听HttpSession对象中属性的添加、修改和删除,具体为:

  • attributeAdded(HttpSessionBindingEvent event):监听HttpSession属性的添加;
  • attributeReplaced(HttpSessionBindingEven event):监听HttpSession属性的修改;
  • attributeRemoved(HttpSessionBindingEven event):监听HttpSession属性的删除。

注意:可以通过HttpSessionBindingEvent的getName()和getValue()方法获取属性改变前的值,还可以通过getSession()获得HttpSession对象。

ServletContext对象-ServletContextAttributeListener

它有三个方法,分别监听ServletContext对象中属性的添加、修改和删除,具体为:

  • attributeAdded(ServletContextAttributeEvent event):监听ServletContext属性的添加;
  • attributeReplaced(ServletContextAttributeEvent event):监听ServletContext属性的修改;
  • attributeRemoved(ServletContextAttributeEvent event):监听ServletContext属性的删除。

注意:可以通过ServletContextAttributeEvent的getName()和getValue()方法获取属性改变前的值,还可以通过getServletContext()获得HttpSession对象。

标签: none