使用Thymeleaf时能直接访问resources目录下的templates目录下的html页面吗
时间: 2024-02-13 10:00:11 浏览: 29
不可以直接访问`resources/templates`目录下的HTML页面,因为这些页面是动态生成的,需要通过Thymeleaf模板引擎进行渲染。但是,可以通过控制器将这些页面映射到一个URL路径上,然后通过访问这个URL路径来访问这些页面。具体步骤如下:
1. 在`application.properties`中添加以下配置,以指定模板文件的查找目录:
```
spring.thymeleaf.prefix=classpath:/templates/
```
这样,Thymeleaf模板引擎将会在`/templates`目录下查找模板文件。
2. 在`resources/templates`目录下创建HTML模板文件,并使用Thymeleaf的语法进行渲染。
3. 创建一个控制器,将该控制器映射到一个URL路径上。例如:
```
@Controller
public class MyController {
@GetMapping("/my-page")
public String myPage(Model model) {
// 将数据添加到模型中
model.addAttribute("message", "Hello, world!");
// 返回模板文件名,不需要指定文件扩展名
return "my-page";
}
}
```
这个控制器将会将`/my-page`路径映射到`resources/templates/my-page.html`模板文件。在控制器中使用`Model`对象将需要渲染的数据添加到模型中。控制器中返回的字符串是模板文件的文件名,不需要指定文件扩展名。
4. 在HTML模板文件中使用Thymeleaf语法渲染数据。例如:
```
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>My Page</title>
</head>
<body>
<h1 th:text="${message}"></h1>
</body>
</html>
```
这里的`${message}`将会被Thymeleaf渲染为控制器中添加到模型中的数据。
5. 访问`/my-page`路径,将会渲染`resources/templates/my-page.html`模板文件,并且显示控制器中添加到模型中的数据。
需要注意的是,`resources/templates`目录下的HTML模板文件并不是静态资源,而是需要经过Thymeleaf模板引擎进行渲染的动态资源。因此,不能直接访问这些文件,必须通过控制器进行访问。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)