What is the use of filter and chain in servlet?

后端 未结 3 1328
名媛妹妹
名媛妹妹 2020-11-27 18:49

chain.doFilter(req,res);
We used this in a servlet program. I want to know what is the use of the method doFilter() in a servlet? Also what is

3条回答
  •  Happy的楠姐
    2020-11-27 19:05

    Servlet filters are implementation of the chain of responsibility pattern

    The point is that each filter stays "in front" and "behind" each servlet it is mapped to. So if you have a filter around a servlet, you'll have:

    void doFilter(..) { 
        // do stuff before servlet gets called
    
        // invoke the servlet, or any other filters mapped to the target servlet
        chain.doFilter(..);
    
        // do stuff after the servlet finishes
    }
    

    You also have the option not to call chain.doFilter(..) in which case the servlet will never be called. This is useful for security purposes - for example you can check whether there's a user logged-in.

提交回复
热议问题