当前位置: 首页 > wzjs >正文

签名设计在线关键词优化快速排名

签名设计在线,关键词优化快速排名,做网站可能存在的问题,厦门专业做网站1.什么是拦截器? Spring Boot 拦截器(Interceptor)是 Spring MVC 框架提供的一种机制,用于在请求到达 Controller 之前或返回响应给客户端之后插入自定义逻辑。它基于 HandlerInterceptor 接口实现,允许你在请求处理的…

1.什么是拦截器?

Spring Boot 拦截器(Interceptor)是 Spring MVC 框架提供的一种机制,用于在请求到达 Controller 之前返回响应给客户端之后插入自定义逻辑。它基于 HandlerInterceptor 接口实现,允许你在请求处理的不同阶段(如预处理、后处理)添加通用功能。

拦截器 vs. 过滤器(Filter)
  • 拦截器:作用于 Spring MVC 层,可以访问 Spring 的上下文(如 Bean),适合处理与业务相关的逻辑(如权限校验、日志记录)。

  • 过滤器:作用于 Servlet 层(更底层),无法直接使用 Spring 的依赖注入,适合处理与协议相关的逻辑(如编码转换、跨域处理)。


2.拦截器的核心方法

拦截器通过实现 HandlerInterceptor 接口定义以下方法:

  1. preHandle

    • 时机:在 Controller 方法执行之前调用。

    • 用途:权限校验、参数预处理、请求日志记录。

    • 返回值

      • true:继续执行后续拦截器和 Controller 方法。

      • false:中断请求,直接返回响应。

  2. postHandle

    • 时机:在 Controller 方法执行之后、视图渲染之前调用

    • 用途:修改 ModelAndView 数据、记录请求处理时间。

  3. afterCompletion

    • 时机:在请求完全结束后调用(视图渲染完成)。

    • 用途:资源清理、统一异常处理、记录最终响应状态。


3.使用场景

  1. 权限验证

    • 在 preHandle 中校验用户登录状态或权限,未登录则重定向到登录页。

      @Override
      public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {if (request.getSession().getAttribute("user") == null) {response.sendRedirect("/login");return false; // 中断请求}return true;
      }

      日志记录

    • 记录请求的 URL、参数、耗时等信息。

      @Override
      public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {long startTime = System.currentTimeMillis();request.setAttribute("startTime", startTime);return true;
      }@Override
      public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {long startTime = (Long) request.getAttribute("startTime");long duration = System.currentTimeMillis() - startTime;log.info("Request URL: {} - Time: {}ms", request.getRequestURL(), duration);
      }

    • 性能监控

      • 统计接口耗时,识别慢请求。

    • 参数预处理

      • 对请求参数进行统一校验或格式化(如 Trim 空格)。

    • 跨域处理

      • 添加统一的跨域响应头(也可以通过过滤器实现)

        如何使用拦截器?

      • 实现 HandlerInterceptor 接口

        注册拦截器到 Spring MVC
        通过 WebMvcConfigurer 配置类添加拦截器并指定拦截路径:
        @Configuration
        public class WebConfig implements WebMvcConfigurer {@Autowiredprivate AuthInterceptor authInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(authInterceptor).addPathPatterns("/api/**")   // 拦截的路径.excludePathPatterns("/api/login"); // 排除的路径}
        }

http://www.dtcms.com/wzjs/275398.html

相关文章:

  • 网站开发与设计专业做一个公司网站要多少钱
  • 做电影网站成本目前小说网站排名
  • cms做淘宝客网站百度竞价排名公式
  • 网站建设单位有哪些内容企业网站推广注意事项
  • abc网站建设怎么样近期新闻热点大事件
  • 做网站的是怎么赚钱的免费的网站推广在线推广
  • 做问卷调查兼职可靠网站实时新闻
  • 我要在58上面做网站今日深圳新闻最新消息
  • 如何给网站做推广重庆排名seo公司
  • 接入网站备案要多久免费网页空间到哪申请
  • 南宁营销网站建设google搜索首页
  • 动态网站与静态网站的区别宁波seo推广优化
  • wordpress 外国主题seo优化神器
  • aspx怎么做网站2021百度最新收录方法
  • 青海公司网站建设上海关键词优化方法
  • 360 的网站链接怎么做网上营销方式和方法
  • 接单做网页的网站chrome谷歌浏览器
  • 做网站建设的名声很差吗微信推广平台自己可以做
  • 济宁网站建设案例展示seo营销培训咨询
  • 如何让百度快速收录网站百度 营销中心
  • 广州易网网站建设如何免费推广自己的网站
  • 学做网站 软件艺考培训
  • 怎么做游戏平台网站域名查询注册商
  • 网站专题建设方案关键词排名优化工具
  • 连云港做网站公司哪家好流感用什么药最好
  • 书画院网站建设模板如何制作百度网页
  • 网站tdk优化广州seo公司
  • 电子商务网站建设计划书seo关键词推广怎么做
  • 网站建设服务合同新seo排名点击软件
  • 做论坛网站看什么书百度快速排名软件原理