SpringBoot整合ThymeLeaf出现的问题解决办法
目录
1、出现的问题:
SpringBoot整合ThymeLeaf时,控制台报错:Error resolving template template might not exist or might not be accessible如下图(大体意思是:模板不存在,也可能是无法被任何配置的模板解析器访问)
2、解决办法:
①:首先在pom.xml文件中查看 是否成功导入了模板引擎依赖,如Thymeleaf或者Freemarker。
②:检查 XXX.html文件中是否成功引入了 如下图的名称空间。
<html lang="en" xmlns:th="http://www.thymeleaf.org">
③:ThyemeLeaf配置文件中明确规定,模板文件必须位于/templates/文件下,以.html结尾的文件,并且严格遵循HTML文本规范,所以出错的小伙伴检查自己的文件类型和文件路径是否正确。
④:查看配置文件application.properties,看看自己是不是在配置ThymeLeaf的时候有的条件过于“苛刻”了。
#thymeleaf相关配置
spring.thymeleaf.cache=false
spring.thymeleaf.check-template=true
spring.freemarker.check-template-location=true
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.servlet.content-type=text/html
spring.thymeleaf.suffix=.html
⑤:我的错误及解决办法
我的错误是在/templates/file.html文件的名字没有和ModelAndView保持一致,应该是films.xml,少了一个‘s’,复数形式。
Thymeleaf有一套自己的规范体系, 会根据用户的配置和默认的配置,去寻找对应的文件,并将数据显示出来。
修改完之后启动,并访问网页: 访问成功
3、问题总结
在SpringBoot中,我们都知道“规范”很重要,这也是SpringBoot的双面性,一方面我们能够快速的使用那些默认配置,一方面也必须去遵循别人定好的规范,所以要想出现的问题越来越少,我们就必须越了解这个东西,深层次的去学习。
遇到问题,学会分析问题,解决问题,总结问题,就不会有问题。