在web开发过程中,往往需要在web.xml中进行过滤配置,对用户的请求以及服务器的响应进行过滤。
过滤器的实现总结:
1、定义一个类实现Filter接口2、在init()初始化方法中获取web.xml中配置的参数值
3、在doFilter方法中实现过滤逻辑
Filter接口提供了三个方法:
init():初始化,读取web.xml中配置的参数
doFilter():实现过滤逻辑
destory():注销该过滤器
public interface Filter { default void init(FilterConfig filterConfig) throws ServletException { } void doFilter(ServletRequest var1, ServletResponse var2, FilterChain var3) throws IOException, ServletException; default void destroy() { } }
下面举例说明过滤器的用法:该过滤器禁止某些IP访问应用
定义类实现Filter接口:
package Filter; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import java.io.IOException; import java.io.PrintWriter; public class IpFilter implements Filter { protected FilterConfig filterConfig ; protected String ip; //过滤器初始化的时候调用,在过滤器初始化过程中从web配置文件读取参数的内容