合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## 监听三个对象的属性的变化 添加,替换,删除. ### ServletContextAttributeListener web.xml ~~~ <listener> <listener-class>com.like.attr.MyServletContextAttrListener</listener-class> </listener> ~~~ ~~~ public class MyServletContextAttrListener implements ServletContextAttributeListener { @Override public void attributeAdded(ServletContextAttributeEvent servletContextAttributeEvent) { System.out.println("ServletContext属性添加了 :" + servletContextAttributeEvent.getName() + "," + servletContextAttributeEvent.getValue()); } @Override public void attributeRemoved(ServletContextAttributeEvent servletContextAttributeEvent) { System.out.println("ServletContext属性移除了 :" + servletContextAttributeEvent.getName() + "," + servletContextAttributeEvent.getValue()); } @Override public void attributeReplaced(ServletContextAttributeEvent servletContextAttributeEvent) { System.out.println("ServletContext属性替换了 :" + servletContextAttributeEvent.getName() + "," + servletContextAttributeEvent.getValue()); } } ~~~ 创建add.jsp ~~~ <% application.setAttribute("name", "jack"); %> ~~~ 创建update.jsp ~~~ <% application.setAttribute("name", "milan"); %> ~~~ 创建remove.jsp ~~~ <% application.removeAttribute("name"); %> ~~~ 访问三个页面触发不同监听器方法. 注意:第一次添加的时候会执行三次. ``` ServletContext属性添加了 :org.apache.jasper.runtime.JspApplicationContextImpl,org.apache.jasper.runtime.JspApplicationContextImpl@521dec7e ServletContext属性添加了 :org.apache.jasper.compiler.ELInterpreter,org.apache.jasper.compiler.ELInterpreterFactory$DefaultELInterpreter@66ce0f61 ServletContext属性添加了 :name,jack //显示的是添加的值 ServletContext属性替换了 :name,jack //显示的是被替换的值 ServletContext属性移除了 :name,milan //显示的是被移除的值 ``` ### ServletRequestAttributeListener 同上 ### ServletSessionAttributeListener 同上