httl页面静态化模板帮助文档

httl页面静态化模板帮助文档

ID:6127159

大小:612.49 KB

页数:41页

时间:2018-01-04

httl页面静态化模板帮助文档_第1页
httl页面静态化模板帮助文档_第2页
httl页面静态化模板帮助文档_第3页
httl页面静态化模板帮助文档_第4页
httl页面静态化模板帮助文档_第5页
资源描述:

《httl页面静态化模板帮助文档》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.概述HTTL(Hyper-TextTemplateLanguage)是一个高性能的JAVA开源模板引擎,适用于动态HTML页面输出,可替代JSP页面,它的指令和Velocity相似。快速将模板编译成JAVA字节码运行,并使用强类型推导,减少运行期反射和转型,渲染速度是Velocity,Freemarker等其它模板引擎的10倍,请参见第3章的性能对比。注:JSP只有Scriptlet是编译的,Tag和EL是解释执行的,而HTTL是全编译的。简洁保持最简洁指令集,只保留基本的占位/注释/转义,和八个必需的控制指令,其它都降级为表达式方法实现,比如:$!{include("a.htt

2、l")}。直觉语法尽可能符合HTML和JAVA开发者的直觉,指令类似于常用Velocity指令,但改进了Velocity中不符合直觉的地方,请参见第5章与Velocity的对比。友好模板自描述,在模板内声明入参变量类型,并基于入参类型推导模板内所有变量类型,使IDE能方便的实现变量方法补全提示,对开发过程友好。2.示例2.1调用示例BooksServlet.java:importhttl.*;importjava.util.*;Mapparameters=newHashMap();parameters.put("user",

3、user);parameters.put("books",books);Engineengine=Engine.getEngine();Templatetemplate=engine.getTemplate("books.httl");template.render(parameters,response.getWriter());注:缺省配置下,HTTL不依赖任何三方库,只需JDK1.5+即可。2.2模板示例books.httl:${book.title}2.3配置示例httl.properties:import.packages+=com.xxxtemplate.directory=META-INF/templatesinput.encoding=UTF-8output.encoding=UTF-8其中,+=表示追加配置,而不覆盖缺省配置。注意,所有配置项都有缺省值,如果使用缺省值,可以不配,更多配置参见文档第7

5、章。3.性能3.1性能对比性能测试类:PerformanceTest.java引擎模板初始化编译首渲染输出大小十万渲染每秒次数javabooks.java0ms1ms0ms28,778byte8,739ms11,442/shttlbooks.httl88ms621ms3ms28,778byte9,608ms10,407/svelocitybooks.vm21ms96ms23ms28,172byte41,969ms2,382/sfreemarkerbooks.ftl103ms121ms141ms27,571byte56,192ms1,779/ssmarty4jbooks.st2ms75

6、ms18ms29,044byte65,855ms1,518/sbeetlbooks.btl24ms11ms159ms26,820byte81,428ms1,228/s环境:os:MacOSX10.8.2,cpu:2x1.70GHz,mem:4G,jvm:1.7.0_09->mem:80MHTTL的渲染速度接近于直接用Java硬编码输出,比其它模板引擎高出10倍。HTTL用到的JDK的Compiler,编译一个类通常需要几百毫秒,比其它模板的编译要慢,但每个模板只在加载时编译一次。注:不同环境的运行结果可能存在差异,以上测试数据仅供参考,你可以在自己的机器上执行测试:gitcloneh

7、ttps://github.com/httl/httl.gitcdhttlmvntest-Dtest=httl.test.PerformanceTest-Dstream=false-Dsize=200-Dcount=10000另外,HTTL缺省开启了EscapeXmlFilter,而其它模板引擎没有,为了公平,性能测试时配置关闭了Filter:value.filters=null3.2优化策略3.2.1强类型编译,并推导关联类型对于表达式${user.na

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。