zoukankan      html  css  js  c++  java
  • SpringBoot访问静态资源和配置springMVC拦截器

    现在,我们的项目是一个jar工程,那么就没有webapp,我们的静态资源该放哪里呢?

    默认的静态资源路径为:

      - classpath:/META-INF/resources/
      - classpath:/resources/
      - classpath:/static/
      - classpath:/public/

      只要静态资源放在这些目录中任何一个,SpringMVC都会帮我们处理。

    添加拦截器:拦截器也是我们经常需要使用的,在SpringBoot中该如何配置呢?

      通过实现`WebMvcConfigurer`并添加`@Configuration`注解来实现自定义部分SpringMvc配置。

      首先我们定义一个拦截器:

    @Component
    public class MyInterceptor implements HandlerInterceptor {
      @Override
      public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("preHandle method is running!");
        return true;
      }
    
      @Override
      public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println("postHandle method is running!");
      }
    
      @Override
      public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        System.out.println("afterCompletion method is running!");
      }
    }

      然后定义配置类,注册拦截器:

    @Configuration
    public class MvcConfiguration implements WebMvcConfigurer {
      @Autowired
      private HandlerInterceptor myInterceptor;
    
      /**
      * 重写接口中的addInterceptors方法,添加自定义拦截器
      * @param registry
      */
      @Override
      public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(myInterceptor).addPathPatterns("/**");
      }
    }

      接下来运行并查看日志:

        preHandle method is running!
        postHandle method is running!
        afterCompletion method is running!

        会发现日志中只有这些打印信息,springMVC的日志信息都没有,因为springMVC记录的log级别是debug,springboot默认是显示info以上,我们需要进行配置。

        SpringBoot通过`logging.level.*=debug`来配置日志级别,*填写包名

          设置org.springframework包的日志级别为debug
          logging.level.org.springframework=debug

  • 相关阅读:
    文本环加载动画html代码
    自己总结的特殊符号,大家有用可以复制
    《名侦探柯南》动画登陆bilibili
    复古风,vivo申请滑盖结构的手机外观专利
    GitHub 热榜第一!可交互全球疫情地图
    最新免费领哔哩哔哩会员教程
    百度网盘免费领取会员
    Apple Watch Series 6或将增加焦虑监测和睡眠追踪功能
    谷歌更新其社区人员流动报告 帮助了解民众遵守封锁令的情况
    计算5的n次幂html代码
  • 原文地址:https://www.cnblogs.com/roadlandscape/p/12394966.html
Copyright © 2011-2022 走看看