SpringBoot整合freemarker
时间: 2023-05-28 13:05:55 浏览: 184
Freemarker是一种模板引擎,可以将数据和模板进行整合生成输出内容。SpringBoot提供了对Freemarker的支持,可以很方便地整合Freemarker。
1. 添加依赖
在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
```
2. 配置文件
在application.properties文件中添加以下配置:
```properties
spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.cache=false
```
- template-loader-path:模板文件的路径,这里设置为classpath:/templates/,表示在项目的classpath下的templates目录中查找模板文件。
- cache:是否开启模板缓存,这里设置为false,表示关闭缓存。
3. 创建模板文件
在classpath:/templates/目录下创建一个名为index.ftl的模板文件,内容如下:
```html
<!DOCTYPE html>
<html>
<head>
<title>SpringBoot整合Freemarker</title>
</head>
<body>
<h1>${message}</h1>
</body>
</html>
```
4. 创建控制器
创建一个名为IndexController的控制器,代码如下:
```java
@Controller
public class IndexController {
@RequestMapping("/")
public String index(Model model) {
model.addAttribute("message", "Hello, World!");
return "index";
}
}
```
该控制器中,使用@RequestMapping注解指定了请求路径为/,并将一个名为message的属性值设置为“Hello, World!”,然后返回了index作为视图名称。由于配置了spring.freemarker.template-loader-path=classpath:/templates/,所以SpringBoot会在classpath:/templates/目录下查找名为index的模板文件,并将模板文件中的${message}替换为“Hello, World!”。
5. 运行程序
启动应用程序,访问http://localhost:8080/,可以看到页面中显示了“Hello, World!”的字样。
阅读全文