发布于 2017-05-09 15:58:33 | 328 次阅读 | 评论: 0 | 来源: 网友投递
Beetl java模板引擎
Beetl,是Bee Template Language的缩写,是一款java模板引擎,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,它功能强大,性能良好,秒杀当前流行的模板引擎。而且还易学易用。
本次发布主要增强了MVC 分离开发:
Beetl 很早就支持分离开发模式。前端人员可以独立开发模板和测试模板,这次主要是提供了专门的WebSimulate类来支持MVC分离开发和REST模拟服务。
比如,对于Spring体系的REST模拟服务
@RequestMapping("/api/**") public void simluateJson(HttpServletRequest request,HttpServletResponse response){ webSimulate.execute(request, response); }
在使用了webSimulate后,任何访问api/**的REST请求,都会按照请求路径读取相应的beetl脚本以模拟响应数据。比如,对于如下请求
/api/user/1
将会读取模板根目录下的
/values/api/user/1.var 或者 /values/api/user/$$.var
*.var 使用beetl脚本,因为语法和习俗类似js,因此前端人员可以动态模拟响应数据,最简单的情况,申明一个json变量作为返回结果,比如
var json = {"success":true};
webSimulate 根据脚本里的变量来确定如何渲染
json ,表示返回的是一个json
ajax,表示此是一个ajax片段渲染
其他情况:认为是一个模板渲染,模板名与请求路径对应,模板参数则是*.var 脚本里申明的所有变量
除了MVC分离开发增强外,还提供了cookie函数用来读取cookie
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl</artifactId> <version>2.7.14</version> </dependency>
Beetl是新一代的模板引擎。总得来说,它的特性如下:
功能完备:同主流的java模板引擎相比,Beetl具有绝大多数功能。适用于各种应用场景,从对响应速度有很高要求的大网站到功能繁多的CMS管理系统都适合。Beetl本身还具有很多独特功能来完成模板编写和维护,这是其他模板引擎所不具有的。
非常简单:类似Javascript语法和习俗,只要半小时就能通过半学半猜完全掌握用法。拒绝其他模板引擎那种非人性化的语法和习俗。
超高的性能:Beetl 远超过主流java模板引擎性能,如5-6倍于freemarker,2倍于传统jsp技术。而且消耗较低的CPU
易于整合:Beetl能很容易的与各种web框架整合,如Spring MVC,JFinal,Struts,Nutz,Jodd,Servlet等。
支持模板单独开发和测试,即在MVC架构中,即使没有M和C部分,也能开发和测试模板。
扩展和个性化:Beetl支持自定义方法,格式化函数,虚拟属性,标签,和HTML标签. 同时Beetl也支持自定义占位符和控制语句起始符号也支持使用者完全可以打造适合自己的工具包.