Spring Boot 模版ThymeLeaf 路径配置
程序员文章站
2022-04-23 15:51:20
...
最近学习Spring Boot微服务开发,参考一个很不错的微信公众号学习,分享一个链接:点击打开链接 博主:纯洁的微笑
开始的入门学习很简单,很简单的搭建过程,很精简的项目依赖配置,完成很简单的 HelloWorld!
接下来遇见一个小坑,这里记录一下,供大家学习参考:
SpringBoot推荐前台使用ThymeLeaf代替以往的jsp页面,具体的优势大家自己体验吧;
我遇到的问题是,在使用ThymeLeaf方式,Controller转发定位不到正确的html页面,错误内容如下:
Console显示:
org.thymeleaf.exceptions.TemplateInputException: Error resolving template "index", template might not exist or might not be accessible by any of the configured Template Resolvers
at org.thymeleaf.TemplateRepository.getTemplate(TemplateRepository.java:246) ~[thymeleaf-2.1.5.RELEASE.jar:2.1.5.RELEASE]
at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1104) ~[thymeleaf-2.1.5.RELEASE.jar:2.1.5.RELEASE]
...............
...............
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_144]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_144]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.5.16.jar:8.5.16]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_144]
浏览器显示:
一看到这个错,很明显意识到这是模版配置的的路径不正确:
就这么几行代码一个简单的页面跳转,出现这个问题,尴尬了。
最后在一个仁兄的分享里面找到了幕后原因:
问题出现在配置返回页面的url前缀那里要加上classpath:
在Spring Boot开发中,定义上面的四个项目中的路径默认为classpath根目录,在Spring Boot 配置模版跳转页面的前后缀应该这样配置;
目录结构这样配置:
得到的显示页面应该是这样的:
这里的截图演示的是github上面的分享项目,如有雷同,请见谅。