当前位置: 首页 > 新闻动态 > 软件编程

浅析SpringBoot中使用thymeleaf找不到.HTML文件的原因

作者:用户投稿 浏览: 发布日期:2026-01-11
[导读]:这篇文章主要介绍了SpringBoot中使用thymeleaf找不到.HTML文件的原因分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

thymeleaf是目前最新的模板引擎,它和springboot完美搭配,让前后端不在疏远
首先先介绍一下市面上出现过的模板引擎

1, Verlocity 距今有10多年之久,是由Apache推出的 Struts2 底层使用2,Freemarker,距今有10多年之久, 第三方小公司推出,后来得到了Apache的认可,在Struts2这个框架中, 底层使用Freemarker. SpringBoot 默认使用Freemarker是以.ftl结尾的文件.
3,Thymeleaf是以.html结尾的文件.

那么,SpringBoot+thymeleaf找不到.HTML文件的原因有那些呢?

1,首先确认是否导入thymeleaf依赖

2,确认自己写的.html为后缀的文件是否放到 resources/templates/ 文件夹下。

3,确认自己的Controller类要放在与 有@SpringBootApplication注解的启动类相同包或者子包下。
4,确认Controller类不能使用 @RestController 或者 @ResponseBody注解,否则会直接return该字符串,是return不到目标html的。

有的朋友可能大意在启动引导类中写了 @RestController注解,
导致最后返回的只有一个字符串.如图所示 search.

ps:下面看下Spring boot找不到template下面的html文件解决方法

静态页面

spring boot项目只有src目录,没有webapp目录,会将静态访问(html/图片等)映射到其自动配置的静态目录,如下

/static

/public

/resources

/META-INF/resources


例如 resources建立一个static目录和index.htm静态文件,访问地址 http://localhost:8082/index.html

如果需要使用templates,thyleaf模版,首先Spring boot项目需要添加依赖,这样才能找到templates下面的*.html文件

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

例如:

这样就可以使用:localhost:8082/crawler/here来访问这个aaa.html文件了。

端口8082是因为在application.properties文件里面设置server.port=8082,一般tomcat默认的端口是8080

总结

免责声明:转载请注明出处:http://sczxchw.cn/news/545497.html

扫一扫高效沟通

多一份参考总有益处

免费领取网站策划SEO优化策划方案

请填写下方表单,我们会尽快与您联系
感谢您的咨询,我们会尽快给您回复!