springboot项目访问静态资源的配置代码实例
作者:我看见的世界 时间:2021-11-16 02:07:49
这篇文章主要介绍了springboot项目访问静态资源的配置代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
这里只是简单记录当上传图片不是放在tomcat其他服务器中时,只是放在磁盘中便可以这样配置,在项目启动后可以访问到磁盘中的资源。
@Configuration
public class SystemConfigurer implements WebMvcConfigurer {
@Value("${jeewx.path.upload}")
private String upLoadPath; //配置的文件的存储位置如 “E://image”
@Value("${spring.resource.static-locations}")
private String staticLocations; //其他静态资源位置,如js,css文件
/**默认 * 排除资源*/
private List<String> EXCLUDE_PATHS= Arrays.asList("/plug-in/**","/content/**","/upload/**","/system/*.do","/error");
@Autowired
private LoginInterceptor loginInterceptor;
@Autowired
private AccessSignInterceptor accessSignInterceptor;
@Value("${jeewx.interceptor.is-open}")
private boolean isOpen;
@Value("${jeewx.interceptor.excludeUrls.login-interceptor}")
private String loginInterceptorExcludeUrls;
@Value("${jeewx.interceptor.excludeUrls.access-sign-interceptor}")
private String accessSignInterceptorExcludeUrls;
/**
* 静态资源的配置 - 使得可以从磁盘中读取 Html、图片、视频、音频等
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations("file:" + upLoadPath + "//")
.addResourceLocations(staticLocations.split(","));
}
/** * 登录验证码 */ @Bean @SuppressWarnings({ "rawtypes", "unchecked" }) public ServletRegistrationBean randCodeImageServlet() { ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new RandCodeImageServlet(), "/randCodeImage"); return servletRegistrationBean; } /** * * (登录 + 签名) */ public void addInterceptors(InterceptorRegistry registry) { if(isOpen) { log.info("loginInterceptorExcludeUrls: "+loginInterceptorExcludeUrls); log.info("accessSignInterceptorExcludeUrls: "+accessSignInterceptorExcludeUrls); registry.addInterceptor(loginInterceptor).addPathPatterns("/**/back/**/*").excludePathPatterns(EXCLUDE_PATHS).excludePathPatterns(loginInterceptorExcludeUrls.split(",")); registry.addInterceptor(accessSignInterceptor).addPathPatterns("/**").excludePathPatterns("/**/back/**").excludePathPatterns(EXCLUDE_PATHS).excludePathPatterns(accessSignInterceptorExcludeUrls.split(",")); } } /** * 默认跳转登录页面 */ @Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/").setViewName("redirect:/system/login.do"); registry.setOrder(Ordered.HIGHEST_PRECEDENCE); } }
来源:https://www.cnblogs.com/yunian139/p/11821223.html
标签:spring,boot,项目,静态,资源,配置
0
投稿
猜你喜欢
详解MyBatis日志如何做到兼容所有常用的日志框架
2022-05-28 08:24:17
Spring Boot中操作使用Redis实现详解
2023-11-24 02:39:29
java实现小i机器人api接口调用示例
2023-02-05 00:09:15
一文详解Jetpack Android新一代导航管理Navigation
2022-12-08 20:40:14
Springboot与vue实现文件导入方法具体介绍
2023-10-31 12:31:37
RabbitMQ延迟队列及消息延迟推送实现详解
2023-11-15 15:31:31
Android系统view与SurfaceView的基本使用及区别分析
2023-04-08 00:33:26
详解springboot和vue前后端分离开发跨域登陆问题
2023-08-07 00:48:38
java中Cookie被禁用后Session追踪问题
2023-10-17 13:44:32
Android实现京东首页效果
2023-10-16 23:10:10
C#信号量用法简单示例
2022-09-21 12:04:41
JAVA实现LRU算法的参考示例
2022-01-26 21:56:49
C++实现LeetCode(5.最长回文子串)
2023-07-03 06:07:13
java File类的基本使用方法总结
2022-05-10 15:15:36
java组件commons-fileupload实现文件上传、下载、在线打开
2022-02-24 22:16:59
C#使用符号表实现查找算法
2022-08-07 01:16:45
Android仿微信语音聊天界面设计
2023-01-10 01:33:28
C#画笔Pen绘制自定义线的帽子
2022-01-09 20:33:55
C#模拟实现抽奖小程序的示例代码
2021-08-27 22:19:17
Android开发之获取LayoutInflater对象的方法总结
2023-05-29 21:50:28