Springboot自定义返回磁盘的thymeleaf模板
时间: 2024-05-01 20:17:01 浏览: 145
1. 创建自定义视图解析器
在Springboot项目中,需要创建一个自定义的视图解析器,这个解析器负责将模板文件解析为HTML文件。
```java
@Configuration
public class ThymeleafConfig {
@Autowired
private ApplicationContext applicationContext;
@Bean
public SpringResourceTemplateResolver templateResolver() {
SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
templateResolver.setApplicationContext(applicationContext);
templateResolver.setPrefix("file:/path/to/templates/");//设置模板文件所在的磁盘路径
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode(TemplateMode.HTML);
templateResolver.setCharacterEncoding("UTF-8");
templateResolver.setCacheable(false);
return templateResolver;
}
@Bean
public SpringTemplateEngine templateEngine() {
SpringTemplateEngine templateEngine = new SpringTemplateEngine();
templateEngine.setTemplateResolver(templateResolver());
return templateEngine;
}
@Bean
public ViewResolver viewResolver() {
ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
viewResolver.setTemplateEngine(templateEngine());
viewResolver.setCharacterEncoding("UTF-8");
return viewResolver;
}
}
```
2. 创建Controller
在Springboot项目中,需要创建一个Controller类,这个类负责处理用户请求,并返回模板文件。
```java
@Controller
@RequestMapping("/template")
public class TemplateController {
@GetMapping("/show")
public String showTemplate(Model model) {
model.addAttribute("message", "Hello, World!");
return "template";//返回模板文件名
}
}
```
3. 创建Thymeleaf模板
在Springboot项目中,需要创建一个Thymeleaf模板,这个模板负责展示数据。
```html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Thymeleaf Template</title>
</head>
<body>
<h1 th:text="${message}"></h1>
</body>
</html>
```
4. 配置模板文件所在的磁盘路径
在Springboot项目中,需要配置模板文件所在的磁盘路径,这样视图解析器才能正确地解析模板文件。
```properties
spring.thymeleaf.prefix=file:/path/to/templates/
```
5. 运行项目
在Springboot项目中,运行主函数,访问http://localhost:8080/template/show,即可看到模板文件中的内容。
阅读全文