当前位置: 代码迷 >> 综合 >> 监听器Filter(javax.servlet.)与过滤器, (javax.servlet)
  详细解决方案

监听器Filter(javax.servlet.)与过滤器, (javax.servlet)

热度:66   发布时间:2023-10-21 08:05:17.0

首先实现  javax.servlet. 下的 Filter 

实现三个方法 

    //过滤器初始化方法init(FilterConfig filterConfig)//过滤方法void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)//销毁方法void destroy()

web.xml添加配置

    <servlet><!--  name:别名  class:包名.类名     --><servlet-name>IndexServlet</servlet-name><servlet-class>controller.IndexServlet</servlet-class></servlet><servlet-mapping><!--   name:与servlet-name一样   url要拦截的路径   --><servlet-name>IndexServlet</servlet-name><url-pattern>/index</url-pattern></servlet-mapping>

过滤器用途:因为有  servletRequest ,servletResponse 我们可以

参考:JSP 过滤器

首先首先实现 ServletContextListener,ServletContextAttributeListener两个接口

实现所有方法 

//ServletContextListener 1 2 
//1监听器初始化
void contextInitialized(ServletContextEvent servletContextEvent)
//2监听器销毁
void contextDestroyed(ServletContextEvent servletContextEvent)//ServletContextAttributeListener 3 4 5
//3属性添加 
void attributeAdded(ServletContextAttributeEvent servletContextAttributeEvent) {
//4属性移除
void attributeRemoved(ServletContextAttributeEvent servletContextAttributeEvent) {
//5属性替换
void attributeReplaced(ServletContextAttributeEvent servletContextAttributeEvent) {
   

web.xml配置

    <listener><!--  class监听器的包名.类名      --><listener-class>listener.MyServletContextListener</listener-class></listener>

监听器用途  ServletContextListener 中有 servletContextEvent 可以获取到 servletContext,

ServletContextAttributeListener 中有 ServletContextAttributeEvent 只有getName()、getValue()方法
  相关解决方案