首页 > 其他分享 >SpringBoot配置简单拦截器 已解决静态资源访问问题

SpringBoot配置简单拦截器 已解决静态资源访问问题

时间:2023-04-21 15:34:02浏览次数:37  
标签:拦截器 SpringBoot 静态 request registry Override public 资源

public class LoginInterceptor implements HandlerInterceptor {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

        System.out.println(request.getRequestURI());
        if(ObjectUtils.isEmpty(request.getSession().getAttribute("admin"))){
            return false;
        }
        return true;
    }
}

添加的资源得是 /** 意思就是 /** 下如果访问到资源了,都是直接返回资源文件。

资源路径不需要exclude.

@Configuration
public class WebConfig extends WebMvcConfigurationSupport {

    @Override
    protected void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/hg/**");
    }

    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**","/hg/**").addResourceLocations("classpath:/static/");
    }
}

标签:拦截器,SpringBoot,静态,request,registry,Override,public,资源
From: https://www.cnblogs.com/pphboy/p/17340536.html

相关文章

  • tomcat提示静态文件缓存超限,造成日志爆满的问题
    日志片段:21-Apr-202311:20:47.215警告[http-nio-80-exec-5308]org.apache.catalina.webresources.Cache.getResourceUnabletoaddtheresourceat[/FileUploads/www/site/2022/11/30/ZZVRQAHD08ZX4GOW47.jpg]tothecacheforwebapplication[]becausetherewasin......
  • 使用Oracle的springBoot
    application.ymlspring:application:name:zplatformdatasource:driver-class-name:oracle.jdbc.driver.OracleDriverurl:jdbc:oracle:thin:@主机号:端口号/数据库?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetriev......
  • 启动springboot项目指定jdk版本以及设置控制台中文
    代码:@echoofftitle=javaServerchcp936setJAVA_HOME=D:\Tools\JDK8setPATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\binsetCLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;lib/run.jarjava-Dfile.encoding=GBK-Xms64m-Xmx1000......
  • Django框架——手写web框架、wsgiref模块、动静态网页、jinja2模块、主流web框架、Dja
    web应用'''通过浏览器访问的应用程序!!!'''1.两种模式c/sb/s B/S:browser---------------->server2.web应用程序的有点 2.1只需要一个浏览器即可2.2 节省资源2.3 他们不需要更新,因为所有新的特性都在服务器上执行3.web应用程序的缺点 #特别依赖服务端程序的健壮......
  • CS0120 对象引用对于非静态的字段、方法或属性
    非静态类的方法是不能直接调用的,需要实例化,但当有时需在各个地方去调用该方法时,逐个去实例化会显得麻烦,可以采用一个静态类来封装后使用。只有静态类才能调用......
  • vue全家桶进阶之路47:Vue3 Axios拦截器封装成request文件
    可以将Axios拦截器封装成一个单独的request文件,以便在整个应用程序中重复使用。以下是一个示例,展示如何将Axios拦截器封装成一个request文件:1、创建一个名为request.js的新文件,并导入Axios:importaxiosfrom'axios';2、创建一个名为request的函数,并将其导出:这将创建一个名......
  • springboot 静态文件夹
    正常这个很久了,不需要写,但是好几年没有写这个相关的,都忘了,好记性不如烂笔头 spring:resources:static-locations:file:D:\\test#对应服务器内映射的实际路径mvc:static-path-pattern:/test/**#对应服务访问时的前缀servlet:multipa......
  • Docker 部署前端静态网站
    1安装Docker(略)2拉取nginx镜像dockerpullnginx3创建文件目录bev:静态网站名称html:存放网站代码nginx:存放nginx配置文件nginx.confconf.d:存放配置文件default.conflogs:挂载nginx的日志4运行镜像,复制文件到宿主机dockerrun-d-p80:80nginx查看容器iddocke......
  • springboot启动自动执行sql脚本
    一:packagecom.lianzhu.bigdata.config;importlombok.extern.slf4j.Slf4j;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.CommandLineRunner;importorg.springframework.boot.autoconfigure.EnableAutoConfigurati......
  • SpringBoot + WebFlux + Spring Security ,SecurityContextHolder.getContext().getA
    解决方案直接在Controller接口方法参数中写入org.springframework.security.core.Authentication,如下:@GetMapping(path="/test")publicMono<Response<?,?>>test(Authenticationauthentication){returnMono.just(ResponseUtil.success(authentica......