最近在捣鼓java的前端模板引擎,发现了新一代的模板引擎beetl,功能强大,并且性能良好
beetl简介
Beetl 是Bee Template Language 的缩写,他是新一代的模板引擎,目前最新的版本为2.9.10,和其他版本的模板引擎相比,beetl具有更齐全的功能,语法和简单直观,性能强大,编写起来也很方便,维护简单等特点。
beetl 的主要特性总结如下
- 功能完备:beetl作为一个主流的模板引擎,具有相当多的功能,适用于各种应用场景,无论是对响应速度有很高要求的大型网站还是功能繁多的管理系统系统,都能够很好的支持。
- 书写简单:beetl的语法很简单,类似于js的语法,可以很快的掌握。
- 高性能:beetl具有高效的性能,而且消耗较低的CPU。beetl与其他的模板的性能对比可以看图中的对比。
- 容易整合:beetl容易和各种web框架整合,如spring mvc,jFinal, Struts,servlet等等。
- 拓展和个性化:beetl支持自定义的方法,格式化函数,虚拟属性,标签,和html标签,自定义占位符和控制语句起始符号。
beetl具有的独特功能
- 自定义占位符和控制语句起始符号:通过自定义占位符和控制语句起始符号,有利于减少模板语法对模板的请入性,比如使用单个@或者单个~以及回车换号作为控制语句的起始符号,能够提升开发效率。
- 单独测试模板:无需真正的控制层和模型层,可以单独开发和测试。
- 支持松散的MVC和严格的MVC:如果在模板语言里嵌入计算表达式,复杂条件表达式,以及函数调用有干涉业务逻辑嫌疑,你可以禁止使用这些语法。
- 安全输出:通过安全输出符号!,能够在模板变量,变量属性引用,for循环,占位输出,try-catch中提供安全输出,保证渲染正常。
- 模板变量:可以将模板的某一部分输出赋值给一个变量,稍后处理,利用模板变量能完成非常复杂的页面布局,简单的布局可以使用incloud,layout标签函数。
- 类型推测:能在运行的时候推测模板变量类型,达到性能优化的效果,也可以通过注解的方法显示的说明模板变量属性。
- 增强的语法:如for-elsefor, select-case,安全输出符号!,省略的三元表达式 等,这些语法特别适合模板开发。
- 性能超高:具有最快的模板解释引擎,同时,又有较低的CPU消耗。5-6倍于国内使用的Freemaker。适合各类模板应用,如代码生成工具,CMS系统,普通网站,超高访问量的门户系统,和富客户端JS框架整合的后台管理应用