涉水模板引擎领域,纯属不当心。
在此对如下人员表示强烈感谢与致敬:
@sub jetbrick做者
@sept
@webit webit做者
@罗格林 rythm做者
@闲.大赋 beetl做者
以及许许多多虽然没有列出来,可是在我写tinytemplate时帮助过个人人。 java
原本是没有本身写一个模板引擎的计划的,由于按个人理解,一直认为这种“语言”级的引擎,难度是很是大的。总感受本身的水平不够,所以不敢有这个念头。直到大量使用Velocty的时候,碰到velocty诸多不尽如人意的地方,可是又无能为力,退回到JSP吧,又心不有甘。因而就指望着寻找一种语法结构接近velocty,可是又没有Velocity这些不方便之处的模板语言。因而进到一个模板语言群,一群大佬们个个至少是一个模板语言的做者,因而做者在里面表达了本身的指望,大佬们都介绍了本身的模板引擎,因而做者一个接一个的看源码,看文档。说实际,看文档,感受都很是不错,都有本身的特点,看语法也都不错,除了一部分本身特别关注的点没有以外,其余部分都很是不错了。可是距离本身的诉求仍是有差距,怎么办呢?因而就准备找一个最接近的模板引擎来进行必定的扩展,挑来挑去就挑中了jetbrick这个模板语言。 git
之因此挑中这个是由于如下几个缘由: web
好的,挑也挑了,选也选了,就开始编写TinyTemplate了,let's GO。 缓存
三天时间初步写好,又花了一周时间进行完善、测试、文档,因而就有了同窗们看到的TinyTemplate 框架
Tiny模板引擎 是一个基于Java技术构建的模板引擎,它具备体量小、性能高和扩展易的特色。 适合于全部经过文本模板生成文本类型内容的场景,如:XML、源文件、HTML等等,能够说,它的出现就是为了替换Velocity模板引擎而来,所以在指令集上在尽可能与Velocity接近的同时,又扩展了一些Velocity不能很好解决问题的指令与功能,在表达多方面则尽可能与java保持一致,因此很是的易学易用。 函数
简要特色介绍 布局
Tiny模板引擎采用编译方式,执行,所以比Velocity、FreeMarker等第一代模板引擎都快得多。可是因为使用了弱类型的方式,较强类型会稍慢一点,5%左右的性能差别,能够忽略不计。 性能
上述数据在同一台计算机上测得。 学习
模板引擎名称 | 性能 |
功能 |
Velocity | 4+倍 | Velocity有的功能,所有支持,且作了大量扩展的新功能 |
FreeMarker | 5+倍 | 说实际用得不是太多,因此功能方面就不便说了,理论上确定多许多功能 |
Jetbrick | 性能略弱之3%左右 | Tiny采用弱类型,Jetbrick采用强类型;Jetbrick的附加功能函数比较多,Tiny则扩展出一些新的功能,Tiny是在学习Jetbrick基础之上搞的。 |
HTTL | 性能略弱之1%左右 | Tiny采用弱类型,HTTL采用强类型;功能方面Tiny扩充许多弥补Velocity不足的功能。 |
BEETL | 性能大体是其1.9倍左右 | 功能方面Tiny模板引擎天然会强,可是其市场应用状况较好,基础功能提供得比较多。 |
其余几种 | 性能对比看上图 | 功能方面没有深刻了解,所以没法评判。 |
目前TinyTemplate的健壮度还不够好,正在进行测试中。 测试
文档地址:
开发环境搭建:
先下载Tiny基础工程并安装之:
https://git.oschina.net/tinyframework/tiny
若是在install过程当中有问题,请对比FAQ修改
http://my.oschina.net/tinyframework/blog/206718
源码地址: