- SpringBoot整合Freemarker的完整攻略
1.1 添加依赖
使用SpringBoot整合Freemarker需要添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
1.2 配置Freemarker属性
在application.properties或application.yml配置文件中添加以下属性:
#Freemarker模板所在的位置,默认为classpath:/templates
spring.freemarker.templateLoaderPath=classpath:/templates
#Freemarker模板的缓存策略,开发环境推荐关闭
spring.freemarker.cache=false
#Freemarker页面字符集,默认为UTF-8
spring.freemarker.charset=UTF-8
1.3 创建Freemarker模板文件
在templates目录下创建Freemarker模板文件,如index.ftl,示例代码如下:
<html>
<head>
<title>Welcome User</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
</body>
</html>
${user}
是Freemarker模板的占位符,后续会在Controller中进行填充。
1.4 创建Controller
创建Controller文件,示例代码如下:
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class WelcomeController {
@GetMapping("/")
public String welcome(Model model) {
model.addAttribute("user", "张三");
return "index";
}
}
可以看到,该Controller的注解设置为@Controller
,方法使用@GetMapping("/")
注解,其他步骤参考官方文档即可。
1.5 运行应用
启动应用,访问http://localhost:8080即可看到效果。
- 示例
该示例使用Thymeleaf进行模板渲染。
2.1 添加依赖
在pom.xml中添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2.2 创建模板文件
在src/main/resources/templates目录下创建模板文件,如index.html,示例代码如下:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Welcome User</title>
</head>
<body>
<h1>Welcome, <span th:text="${user}"></span>!</h1>
</body>
</html>
2.3 创建Controller文件
创建Controller文件,示例代码如下:
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class WelcomeController {
@GetMapping("/")
public String welcome(Model model) {
model.addAttribute("user", "张三");
return "index";
}
}
2.4 运行应用
启动应用,访问http://localhost:8080即可看到效果。
以上是使用SpringBoot整合Thymeleaf的示例,类似地,也可以使用SpringBoot整合其他模板引擎。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot整合freemarker的讲解 - Python技术站