20201112_陈宇_

日志

学习总结:

过滤器&监听器:

​ 编写一个Servlet,路径为/captcha

​ 创建一个类实现过滤器接口javax.servlet.Filter

        xml方式或者注解方式配置<Filter>过滤器拦截的请求路径(urlPatterns = "/captcha")

​ 在doFilter方法中书写过滤任务

​ filterChain.doFilter方法放行

​ 过滤器doFilter方法默认拦截请求,如果需要经过过滤器之后,可以继续访问资源,要使用filterChain对象的doFilter方法放行

        过滤器我们已经看到了他的执行流程,但是,过滤器只有被创建出来才能执行,因此,我们还要了解过滤器生命周期。它包括了init、doFilter、destroy三个方法 

​ init方法是初始化方法。当过滤器被部署到web服务器时,服务器启动的时候执行一次

​ 只要一个请求符合Filter拦截路径,都会执行doFilter。 果需要让这个请求通过过滤器,继续访问目标资源,一定得调用FilterChain对象的doFilter方法,要不然请求就被过滤器拦截了。FilterChain对象的doFilter方法表示对于请求放行。

        过滤器的销毁方法。服务器停止或者将项目从服务器中移除的时候,过滤器销毁,执行一次destory方法。  

​ 当服务器启动的时候,过滤器就被初始化了,执行过滤器的init方法

​ 每当一个请求的路径是满足过滤器的配置路径,那么就会执行一次过滤器的doFilter方法

        当服务器停止的时候,销毁过滤器,执行过滤器的destory方法 

        精确匹配只对某一个指定的资源进行过滤 

        假如需要对项目index.jsp进行过滤,只需要配置过滤器的路径为/index.jsp。 

        request是默认的拦截方式:浏览器(客户端)发出的请求都会进行拦截。

​ 1.直接从地址栏访问index.jsp,Filter拦截

​ 2.重定向到index.jsp,Filter拦截

监听器使用步骤:

        创建一个类实现ServletContextListener接口

​ 给这个类在xml中配置或者添加注解@WebListener

​ 实现ServletContextListener的contextInitialized和contextDestroyed方法

学习心得:

​ 今天又把小项目逐渐完善了一下,写了新增用户和编辑用户,删除还没写完,今天又解决了一些小问题,还是得感谢一下新同桌,解答问题还是挺耐心,挺仔细的,多向他学习学习,争取早日变得更强吧。

标签

评论

this is is footer