在路上

 找回密码
 立即注册
在路上 站点首页 学习 查看内容

spring-boot 过滤器(拦截器)

2016-7-29 15:47| 发布者: zhangjf| 查看: 703| 评论: 0

摘要: 注:我使用的是外置tomcat启动注意常见的配置:.addPathPatterns("/*");.addPathPatterns("/**");.addPathPatterns("/user/*");.addPathPatterns("/api/*");.addPathPatterns("/**").excludePat ...
注:我使用的是外置tomcat启动
注意常见的配置:
.addPathPatterns("/*");
.addPathPatterns("/**");
.addPathPatterns("/user/*");
.addPathPatterns("/api/*");
.addPathPatterns("/**").excludePathPatterns("/login");
有哪些区别

另外spring boot拦截器默认有:
HandlerInterceptorAdapter
AbstractHandlerMapping
UserRoleAuthorizationInterceptor
LocaleChangeInterceptor
ThemeChangeInterceptor
  1. @Configuration
  2. static class WebMvcConfigurer extends WebMvcConfigurerAdapter {
  3. public void addInterceptors(InterceptorRegistry registry) {
  4. registry.addInterceptor(new HandlerInterceptorAdapter() {
  5. @Override
  6. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
  7. throws Exception {
  8. request.getContextPath();
  9. System.out.println("11111111111 Application.WebMvcConfigurer.interceptor");
  10. return true;
  11. }
  12. }).addPathPatterns("/**");
  13. }
  14. }
  15. }
复制代码
  1. package com.allcam.uas;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import org.springframework.boot.SpringApplication;
  5. import org.springframework.boot.autoconfigure.SpringBootApplication;
  6. import org.springframework.boot.builder.SpringApplicationBuilder;
  7. import org.springframework.boot.context.web.SpringBootServletInitializer;
  8. import org.springframework.context.annotation.Configuration;
  9. import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
  10. import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
  11. import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
  12. /**
  13. *
  14. * <一句话功能简述> <功能详细描述>
  15. *
  16. * @author yizhichao
  17. * @version [版本号, 2016年7月12日]
  18. * @see [相关类/方法]
  19. * @since [产品/模块版本]
  20. */
  21. @SpringBootApplication
  22. // same as @Configuration @EnableAutoConfiguration
  23. // @Configuration
  24. // @ComponentScan
  25. // @EnableAutoConfiguration
  26. public class Application extends SpringBootServletInitializer {
  27. // private static final Logger logger =
  28. // LoggerFactory.getLogger(Application.class);
  29. @Override
  30. protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
  31. return application.sources(Application.class);
  32. }
  33. public static void main(String[] args) {
  34. // File file = new File("log4j2.xml");
  35. // BufferedInputStream in = null;
  36. // try
  37. // {
  38. // in = new BufferedInputStream(new FileInputStream(file));
  39. // final ConfigurationSource source = new ConfigurationSource();
  40. // source.setInputStream(in);
  41. // Configurator.initialize(null, source);
  42. // }
  43. // catch (FileNotFoundException e)
  44. // {
  45. // e.printStackTrace();
  46. // }
  47. SpringApplication.run(Application.class, args);
  48. }
  49. @Configuration
  50. static class WebMvcConfigurer extends WebMvcConfigurerAdapter {
  51. public void addInterceptors(InterceptorRegistry registry) {
  52. registry.addInterceptor(new HandlerInterceptorAdapter() {
  53. @Override
  54. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
  55. throws Exception {
  56. request.getContextPath();
  57. System.out.println("11111111111 Application.WebMvcConfigurer.interceptor");
  58. return true;
  59. }
  60. }).addPathPatterns("/**");
  61. }
  62. }
  63. }
复制代码
  1. @Configuration
  2. public class WebMvcConfigurer extends WebMvcConfigurerAdapter {
  3. public void addInterceptors(InterceptorRegistry registry) {
  4. registry.addInterceptor(new HandlerInterceptorAdapter() {
  5. @Override
  6. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
  7. throws Exception {
  8. System.out.println("222222222222 WebMvcConfigurer.interceptor====");
  9. return true;
  10. }
  11. }).addPathPatterns("/**");
  12. }
  13. }
复制代码
  1. package com.allcam.uas.filter;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import org.springframework.context.annotation.Configuration;
  5. import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
  6. import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
  7. import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
  8. @Configuration
  9. public class WebMvcConfigurer extends WebMvcConfigurerAdapter {
  10. public void addInterceptors(InterceptorRegistry registry) {
  11. registry.addInterceptor(new HandlerInterceptorAdapter() {
  12. @Override
  13. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
  14. throws Exception {
  15. System.out.println("222222222222 WebMvcConfigurer.interceptor====");
  16. return true;
  17. }
  18. }).addPathPatterns("/**");
  19. }
  20. }
复制代码

最新评论

小黑屋|在路上 ( 蜀ICP备15035742号-1 

;

GMT+8, 2025-5-6 12:28

Copyright 2015-2025 djqfx

返回顶部