SpringBoot 2.X 访问静态资源

谁践踏了优雅 2023-05-22 22:21 139阅读 0赞
我项目中的文件如下,使用的是Spring Boot 2.2.6 ,也就是2.X版本

Html文件

在这里插入图片描述

资源目录

在这里插入图片描述

pom.xml

在这里插入图片描述

Controller层

在这里插入图片描述

访问Html的时候,发现静态资源没有访问到,在html文件中,静态资源路径写的是没问题的,在SpringBoot1.X的時候也是沒問題的,但是为什么访问不到?究其原因是使用的SpringBoot2.X少了一个配置:主要是那个addResourceHandlers方法,有了它就可以进行静态资源访问了,具体是因为什么?这要看源代码背后的原理,这个后来要探索下。

  1. import org.springframework.context.annotation.Configuration;
  2. import org.springframework.web.servlet.config.annotation.*;
  3. @Configuration
  4. @EnableWebMvc
  5. class MvcConfig implements WebMvcConfigurer {
  6. /** * 视图跳转控制器 * 无业务逻辑的跳转 均可以以这种方法写在这里 * @param registry */
  7. public void addViewControllers(ViewControllerRegistry registry) {
  8. registry.addViewController("/").setViewName("test");
  9. registry.addViewController("/home").setViewName("test");
  10. registry.addViewController("/login").setViewName("login");
  11. }
  12. @Override
  13. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  14. //告知系统static 当成 静态资源访问
  15. registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
  16. }

发表评论

表情:
评论列表 (有 0 条评论,139人围观)

还没有评论,来说两句吧...

相关阅读