Beetl 3.0.0.M1 版本发布,Java 模板引擎

栏目: 软件资讯 · 发布时间: 5年前

内容简介:Beetl是一款全功能,性能优秀的国产模板引擎,可以广泛用于动态页面生成,静态页面生成,代码生成,文本转换,脚本和规则引擎等,从2011年来,一直维护,并得到国内用户的肯定。 本次发布是3.0的第一个版本,3.0...

Beetl是一款全功能,性能优秀的国产模板引擎,可以广泛用于动态页面生成,静态页面生成,代码生成,文本转换,脚本和规则引擎等,从2011年来,一直维护,并得到国内用户的肯定。

本次发布是3.0的第一个版本,3.0 版本相比于2.0,在文本处理和脚本引擎上做了增强

* Beetl支持自定义模板的定界符和站位符,Beetl3 允许再定义一对“站位符和定界符”,比如定义了模板的定界符<%%>,站位符${},你可以定义一对,比如<!--: --> 和 #{} 如下是一段模板。自定义定界符和占位符有有助于和模板“融洽相处”

<!--: for(u in users){ -->
<span>${u.name},#{u.content} </span>
<!--:}-->

* HTML 标签增强,可获取父子关系,标签定义的变量可导出到整个模板使用

<cms:define export="contents"/>
//其他地方可以用conents
<cms:foreach list="${contents}" var="c">
<span>${c.title}</span>
</cms:foreach>

* 语法树可定制,2.X版本如果要修改语法树,写的代码较多,3.0能轻易的修改语法树,实现自己特有逻辑,比如在线内容管理系统要求循及时模板写错了,循环运行超过不能超过1万次,

@ while(true){ \\ 恶意写法

@}

3.0 能轻易修改while节点实现,通过GrammarCreator,替换自己的实现,从而限制while循环限制次数,Beetl的所有语法节点都可以被替换,以实现扩展需求,譬如 #{} 的实现需要xxs

	
	@Override
	public PlaceholderST createTextOutputSt2(Expression exp, FormatExpression format) {
		check("TextOutputSt2");
		return new YourXXSPlaceholderST(exp, format, null);
	}

YourXXSPlaceholderST 内部可以参考PlaceholderST.java实现,但增加了XSS校验

* 提升了脚本API,Beetl 本身就是脚本引擎,Beetl3 增加了多个脚本&规则运行的API,可以方便的提供脚本功能

Map ret = groupTemplate.runScript("return 2*利率;",paras);
Double d = ret.get("return");

*  片段渲染增强,Beetl允许只渲染模板的一部分,Beetl3增强了片段渲染功能。

*  语法糖,增加了诸如 x+=y ,user.age+=1这种语法.

* Beetl3内部做了较多改动,但性能还是一贯的优秀,没有已知的模板引擎在性能上超过Beetl3

Beetl 3.0.0.M1 版本发布,Java 模板引擎

Beetl 3.0.0.M1 版本发布,Java 模板引擎

 

Maven

<dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetl</artifactId>
    <version>3.0.0.M1</version>
</dependency>

 


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

常用算法深入学习实录

常用算法深入学习实录

张子言 / 电子工业出版社 / 2013-10 / 89.00元

对于任何一门编程语言来说,算法都是程序的“灵魂”。正是因为算法如此重要,所以笔者精心编写了本书,希望通过书中的内容引领广大读者一起探讨学习算法的奥秘,带领广大读者真正步入程序开发的高级世界。 本书共分15章,循序渐进、由浅入深地详细讲解算法的核心内容,并通过具体实例的实现过程演练各个知识点的具体用法。本书首先详细讲解算法的基础知识,剖析了将算法称为“程序灵魂”的原因。然后详细讲解算法技术的核......一起来看看 《常用算法深入学习实录》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具