本次发布改善了Function功能,让Beetl在语法解析阶段能定制Function
- 增加LineAware接口,实现此Function的函数,会在调用时候,在参数列表后追加一个所在行的参数,如debug函数,可以输出变量和调用时候所在的行
- 增加ForceSafe接口,实现此Function的函数,会在调用的时候,参数列表会增加一个安全输出符号,如isEmpty函数
isEmpty(user)
会变成isEmpty(user!)
- 增加ChangeInput接口,更加通用的方式,可以自定修改方法参数,如has函数
has(var1)
会更改为has("var1")
Beetl之前会有些”魔法函数“实现特殊功能,这次规范,只要实现如上接口,就可以实现各种魔法应用
- 对不符合JavaBean规范的POJO,抛出异常的时候给与明确提示
Beetl是一款全功能,高性能优秀的国产模板引擎,各方面特性领先国外同类引擎技术,可以广泛用于动态页面生成,静态页面生成,代码生成,文本转换,脚本语言和规则引擎等,从2011年来,一直维护,并得到国内公司用户的赞赏。
Maven
<dependency>
<groupId>com.ibeetl</groupId>
<artifactId>beetl</artifactId>
<version>3.8.0.RELEASE</version>
</dependency>