当前位置:   article > 正文

Springboot中templates路径下的html文件为何无法访问?_为什么在templates下的html无法访问到controller,总是报fail load re

为什么在templates下的html无法访问到controller,总是报fail load resource

Springboot中templates路径下的html文件为何无法访问?

解决办法一(不太推荐,数量少可以考虑一下,但是感觉不如下面的好)

给视图注册别名,如果你注册上了,那么你直接访问login.html或者ssh.html是可以访问的,那个别名“login”可以在函数返回时使用的。

@Configuration
public class MyConfig implements WebMvcConfigurer {

   //这里就是建立一个视图别名的地方了
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/login.html").setViewName("login");
        registry.addViewController("/ssh.html").setViewName("ssh");
    }

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

示例:
在这里插入图片描述

解决方法二(一般)

加配置去解决它,加上下面的配置即可

@Configuration
public class MyConfig implements WebMvcConfigurer {

     @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //这里是指在url上面打的内容
        registry.addResourceHandler("/**")
                //下面的是指可以对应resources文件下那些内容
                .addResourceLocations("classpath:/")
                .addResourceLocations("classpath:/templates/")
                .addResourceLocations("classpath:/static");
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

解决办法三(极好)

在springboot里面不是有application.properties吗?
我们直接在里面加属性,跟上面解决方法二里面属性一样。

# 静态文件请求匹配方式
spring.mvc.static-path-pattern=/**
# 修改默认的静态寻址资源目录
spring.resources.static-locations= classpath:/templates/,classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/

  • 1
  • 2
  • 3
  • 4
  • 5

好了,问题终于解决了,心满意足了

最后放一张图表示位置说明,注意一下上面的那些位置后都要加个/标志哟,说明访问那个文件夹下面资源
在这里插入图片描述

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号