7,005
社区成员




javax.servlet.Filter
。复习Servlet入门步骤:
- 创建Java类,实现Servlet接口
- 重写接口的方法。共5个方法,了解3个,重点service方法
- 在类上加注解@WebServlet,配置这个Servlet的访问路径
创建一个Filter的步骤:
javax.servlet.Filter
接口package com.demo.target;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(urlPatterns="/target")
public class TargetServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("/target.....");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
package com.demo.filter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
/**
* 1. 创建Java类,实现javax.servlet.Filter接口
* 2. 重写接口的方法,重点doFilter方法
* 3. 在类上添加注解@WebFilter,配置拦截范围
*/
@WebFilter("/*")
public class Demo01StartFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
System.out.println("A");
//放行(调用执行后续的资源)
chain.doFilter(request, response);
System.out.println("B");
}
@Override
public void destroy() {
}
}
package com.demo.filter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
@WebFilter("/*")
public class Demo02StartFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
System.out.println("C");
chain.doFilter(request, response);
System.out.println("D");
}
@Override
public void destroy() {
}
}
javax.servlet.Filter
接口