美文网首页
深入学习java笔记-7.SpringBoot2.1之Filte

深入学习java笔记-7.SpringBoot2.1之Filte

作者: 笨鸡 | 来源:发表于2019-05-08 16:11 被阅读0次
SpringStartApplication.java
@SpringBootApplication
@ServletComponentScan
public class SpringStartApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringStartApplication.class, args);
    }
}
LoginFilter.java
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebFilter(urlPatterns = "/api2/*", filterName = "loginFilter")
public class LoginFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("init loginFilter");
    }

    @Override
    public void doFilter(ServletRequest servletRequest, 
                         ServletResponse servletResponse, 
                         FilterChain filterChain) 
            throws IOException, ServletException {
        System.out.println("doFilter loginFilter");
        HttpServletRequest req = (HttpServletRequest) servletRequest;
        HttpServletResponse resp = (HttpServletResponse) servletResponse;
        String username = req.getParameter("username");
        if("xdclass".equals(username)){
            filterChain.doFilter(servletRequest, servletResponse);
        }else{
            resp.sendRedirect("/index.html");
            return;
        }
    }

    @Override
    public void destroy() {
        System.out.println("destroy loginFilter");
    }
}
UserServlet.java
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(name = "userServlet", urlPatterns = "/v1/api/test/customs")
public class UserServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.getWriter().print("custom servlet");
        resp.getWriter().flush();
        resp.getWriter().close();
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }
}
CustomContextListener.java
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

@WebListener
public class CustomContextListener implements ServletContextListener {
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println("=======contextInitialized=======");
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
        System.out.println("=======contextDestroyed=======");
    }
}
RequestListener.java
import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
import javax.servlet.annotation.WebListener;

@WebListener
public class RequestListener implements ServletRequestListener {

    @Override
    public void requestInitialized(ServletRequestEvent sre) {
        System.out.println("=======requestInitialized=======");
    }

    @Override
    public void requestDestroyed(ServletRequestEvent sre) {
        System.out.println("=======requestDestroyed======");
    }
}
Controller.java
@GetMapping("/api2/v1/account")
    public Object account(){
        params.clear();
        System.out.println("controller----->account");
        params.put("money", 1000);
        return params;
    }

相关文章

网友评论

      本文标题:深入学习java笔记-7.SpringBoot2.1之Filte

      本文链接:https://www.haomeiwen.com/subject/xeqvoqtx.html