一、FreeMarker生成HTML頁面
在動態HTML上springBoot的表現依然完美,它提供了多種模板引擎的默認配置支持,其中主要有Thymeleaf、FreeMarker、Velocity等,springBoot推薦使用這些模板引擎,不建議使用JSP,因爲JSP無法實現springBoot的多種特性。FreeMarker基於Apache2.0版本發佈,其模板編寫爲FreeMarker Template Language(FTL),是一個基於模板生成文本輸出的通用工具,使用純Java編寫,屬於簡單、專用的語言。FreeMarker被設計用來生成渲染HTML Web頁面,特別是基於MVC模式的應用程序,通常由Java程序準備要顯示的數據,由FreeMarker生成頁面,通過模板顯示準備的數據,簡單來講就是模板加數據模型,然後輸出頁面。
二、使用FreeMarker渲染web視圖
1.添加依賴關係
整合FreeMarker首先需要在POM文件內引入相關依賴。
<!-- 引入freeMarker的依賴包. -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
2.修改application.properties文件
爲了實現熱部署,這裏配置一下FreeMarker的緩存,關於FreeMarker的其它配置使用默認即可。
spring.freemarker.cache=false
3.創建FreeMarker模板
當你使用任何一個模板引擎時,它的默認模板配置路徑爲:src/main/resources/templates,模板默認是從classpath:/templates/這個位置查找的。
創建demo.ftl文件
<html>
<head>
<meta charset="UTF-8">
<title>FreeMarker</title>
</head>
<body>
springBoot使用${name}渲染頁面。
</body>
</html>
4.創建Controller輔助類
@Controller
public class FreeMarkerController {
@RequestMapping("/demo")
public String demo(Map<String,Object> map){
map.put("name","FreeMarker");
return "demo";
}
}
5.測試
啓動工程,在瀏覽器中輸入http://localhost:8080/demo
結果如下: