SpringBoot集成beetl模板快速入門
首次探索
beetl官方網址:http://ibeetl.com/
創建SpringBoot工程(idea)
新建工程
-
選擇創建Spring工程
-
書寫包名和項目名稱等
-
選擇集成web依賴
-
確認項目保存路徑信息
修改maven本地倉庫位置
maven本地倉庫位置,默認在C盤的:
"C:\Users\用戶名 \ .m2\repository"
可以復制maven工程下的setting.xml修改其文件,詳情見該博客
http://blog.csdn.net/pyfysf/article/details/78623033
(該步驟可以忽略)
配置SpringBoot工程熱部署
配置SpringBoot工程熱部署
可以參考該博客:
http:// blog.csdn.net/pyfysf/article/details/78791292
(該步驟也可忽略.)
注:如果沒有此步驟,每次修改工程文件都必須重啟服務器
添加beetl依賴
關於beetl的介紹和說明請查看官方網站具體介紹
添加maven依賴
<dependency>
<groupId>com.ibeetl</groupId>
<artifactId>beetl-framework-starter</artifactId>
<version>1.1.22.RELEASE</version>
</dependency>
添加beetl配置
在項目的運行入口文件SpringbootbeetlApplication.java中加入下面代碼
@Bean(initMethod = "init", name = "beetlConfig")
public BeetlGroupUtilConfiguration getBeetlGroupUtilConfiguration() {
BeetlGroupUtilConfiguration beetlGroupUtilConfiguration = new BeetlGroupUtilConfiguration();
ResourcePatternResolver patternResolver = ResourcePatternUtils.getResourcePatternResolver(new DefaultResourceLoader());
try {
// WebAppResourceLoader 配置root路徑是關鍵
WebAppResourceLoader webAppResourceLoader =
new WebAppResourceLoader(patternResolver.getResource("classpath:/").getFile().getPath());
beetlGroupUtilConfiguration.setResourceLoader(webAppResourceLoader);
} catch (IOException e) {
e.printStackTrace();
}
//讀取配置文件信息
return beetlGroupUtilConfiguration;
}
@Bean(name = "beetlViewResolver")
public BeetlSpringViewResolver getBeetlSpringViewResolver(@Qualifier("beetlConfig") BeetlGroupUtilConfiguration beetlGroupUtilConfiguration) {
BeetlSpringViewResolver beetlSpringViewResolver = new BeetlSpringViewResolver();
beetlSpringViewResolver.setPrefix("WEB-INF/views/");
beetlSpringViewResolver.setSuffix(".html");
beetlSpringViewResolver.setContentType("text/html;charset=UTF-8");
beetlSpringViewResolver.setOrder(0);
beetlSpringViewResolver.setConfig(beetlGroupUtilConfiguration);
return beetlSpringViewResolver;
}
解釋:
設置beetl的根路徑
WebAppResourceLoader webAppResourceLoader =
new WebAppResourceLoader(patternResolver.getResource("classpath:/").getFile().getPath());
注:beetl的默認根路徑為resources/templates文件夾。如丄行代碼設置resources文件夾即為根路徑
beetlSpringViewResolver.setPrefix("WEB-INF/views/");
注:如丄行代碼設置即為beetl的路徑為resources文件夾下的WEB-INF/views/
設置后綴
beetlSpringViewResolver.setSuffix(".html");
注:beetl的默認后綴為btl。如丄行代碼設置即為beetl的后綴設置為html
- 所以假設項目Controller代碼中 return "add";
- 那么跳轉的頁面即為resources/WEB-INF/views/add.html
beetl的其他常用配置
在resources文件夾下創建beetl.properties,可以在里面修改一些默認配置,比如把默認定界符號<%%>修改為@
DELIMITER_STATEMENT_START=@
DELIMITER_STATEMENT_END=
加入這么兩行代碼就可以了
默認定界符號使用:
<%
var a = 2;
var b = 3;
var result = a+b;
%>
hello 2+3=${result}
修改定界符號為@后使用:
@var a = 2;
@var b = 3;
@var result = a+b;
hello 2+3=${result}
其他配置詳見beetl官方網站
創建Controller進行測試
瀏覽器中輸入
http://localhost:8080/home/add
即可進行測試
測試獲取contextPath和后台返回的數據
在springboot的主配置文件application.yml中
進行如下配置
server:
context-path: /springbootbeetl
修改Controller代碼為:
@Controller
@RequestMapping("/home")
public class HelloBeetlController {
private static Logger logger = LoggerFactory.getLogger(HelloBeetlController.class);
/**
* 測試beetl模板
*
* @return
*/
@RequestMapping("/add")
public ModelAndView home() {
ModelAndView modelAndView = new ModelAndView();
logger.info("add request");
modelAndView.addObject("email", "apk2sf@163.com");
modelAndView.setViewName("add");
return modelAndView;
}
}
修改add.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>add</title>
</head>
<body>
add Html web info
<hr>
獲取項目的context-path-->${ctxPath}
<hr>
獲取后台返回的數據--->${email}
</body>
</html>
- 項目結構
- 瀏覽器訪問測試
http://localhost:8080/springbootbeetl/home/add
- 測試結果