今天使用springboot+thymeleaf访问前端静态HTML时候,无论Controller里怎么写,lcalhost:8080/login都无法访问到static下的HTML页面,我反复确定Controller代码没问题,于是怀疑可能是配置出问题了。
pom.xml里
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
application.yml里
##thymeleaf页面模板配置
spring:
mvc:
view:
prefix: /
suffix: .html
粗看似乎没有问题,pom.xml配置了,前缀配置了,后缀也配置了。
我干脆尝试性的把HTML文件放到thymeleaf文件夹下,结果却能访问,我就仔细挨个去翻文档,最后发现原来application.yml里决定静态资源的前缀后缀并不是spring.view.prefix和spring.view.suffix,
而是spring.thymeleaf.prefix和spring.thymeleaf.suffix,这东西不去查,而仅仅看还真看不出来。
改成
spring.thymeleaf.prefix=classpath:/
spring.thymeleaf.suffix=.html
就可以成功的访问static下的静态HTML了。