生活随笔
收集整理的這篇文章主要介紹了
第五篇:Spring Boot整合filter
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、Springboot整合Servlet
第一種方案:通過注解掃描完成filter組建的注冊
- 1、編寫自定義filter(FirstFilter)
//urlPattern是一個數組可以添加多個
//@WebFilter(filterName = "FirstFilter",urlPatterns = {"*.do","*.jsp"})
@WebFilter(filterName = "FirstFilter", urlPatterns = {"/first"})
public class FirstFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {System.out.println("進入filter");
// //放行chain.doFilter(request, response);System.out.println("離開filter");}@Overridepublic void destroy() {}
}
@WebServlet(name = "FirstServlet",urlPatterns = "/first")
public class FirstServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("FirstServlet啟動........");}
}
@SpringBootApplication
@ServletComponentScan
//在springboot啟動時會掃描@Webfilter注解和@webFilter注解,并將該類實例化
public class SpringBootChapter1Application {public static void main(String[] args) {SpringApplication.run(SpringBootChapter1Application.class, args);}}
- 4、啟動項目及瀏覽器驗證:http://localhost:8080/first
- 5、查看控制臺
第二種方案:通過方法完成filter組件注冊
public class SecondFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {System.out.println("進入SecondFilter");//放行chain.doFilter(request, response);System.out.println("離開SecondFilter");}@Overridepublic void destroy() {}
}
public class SecondServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("SecondServlet啟動........");}
}
/*** @author gblfy* @ClassNme AppFilter2* @Description springboot整合filter方式2* @Date 2019/2/20 13:45* @version1.0*/
@SpringBootApplication
public class SpringbootFilterApplication2 {public static void main(String[] args) {SpringApplication.run(SpringbootFilterApplication2.class, args);}// 注冊servlet@Beanpublic ServletRegistrationBean getServletRegistrationBean() {ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());bean.addUrlMappings("/second");return bean;}// 注冊filter@Beanpublic FilterRegistrationBean getFilterRegistrationBean() {FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter());
// bean.addUrlPatterns(new String[]{"*.do","*.jsp"});bean.addUrlPatterns("/second");return bean;}
}
本文源碼下載:
github地址:
https://github.com/gb-heima/Spring-Boot-Actual-Combat/tree/master/parent/spring-boot-chapter-5
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎
總結
以上是生活随笔為你收集整理的第五篇:Spring Boot整合filter的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。