一 创建项目
二 pom.xml文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
</parent>
<groupId>com.bjsxt</groupId>
<artifactId>09-spring-boot-view-freemarker</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!-- freemarker启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
</dependencies>
</project>
三 HBuilder工具
由于默认情况下eclipse中没有开发Freemarker的开发插件,使开发Freemarker开发不太方便,所以我们可以借助HBuilder工具。
下载地址:http://www.dcloud.io/hbuilderx.html(HBuilder.9.1.29.windows)
安装后直接文件-》打开目录,选择项目,如这里的09-spring-boot-view-freemarker,导入之后如下图所示:
四 编写视图(useList.ftl)
注意:springBoot要求模板形式的视图层技术的文件必须要放在src/main/resources目录下的一个子目录下,且该子目录名称必须是templates.
<html>
<head>
<title>展示用户数据</title>
<meta charset="utf-8" />
</head>
<body>
<table border="1" width="50%" align="center">
<tr>
<th>ID</th>
<th>Name</th>
<th>Age</th>
</tr>
<#list list as user>
<tr>
<td>${user.userId }</td>
<td>${user.username }</td>
<td>${user.userAge }</td>
</tr>
</#list>
</table>
</body>
</html>
五 编写controller
/**
* SpringBoot整合freemarker
*/
@Controller
public class UserController {
/*
* 处理请求,产生数据
*/
@RequestMapping("/showUser")
public String showUser(Model model) {
List<User> list = new ArrayList<>();
list.add(new User(1, "zhangsan", 20));
list.add(new User(2, "lisi", 22));
list.add(new User(3, "wangwu", 25));
// 需要一个Model对象
model.addAttribute("list", list);
// 跳转视图
return "userList";
}
}
public class User {
private Integer userId;
private String username;
private Integer userAge;
public User() {
super();
}
public User(Integer userId, String username, Integer userAge) {
super();
this.userId = userId;
this.username = username;
this.userAge = userAge;
}
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Integer getUserAge() {
return userAge;
}
public void setUserAge(Integer userAge) {
this.userAge = userAge;
}
}
六 编写启动类
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}