文档章节

JFinal整合HTTL模板引擎

玛雅牛
 玛雅牛
发布于 2013/06/08 14:37
字数 442
阅读 4.9K
收藏 14

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

偶然机会看到了Httl模板引擎。HTTL是一个高性能的开源JAVA模板引擎, 适用于动态HTML页面输出, 可替代JSP页面, 指令和Velocity相似。

HTTL的优点如下:

1)速度快,速度接近Java硬编码输出
2)指令简单,HTTL只有 #set, #if, #else, #for, #break, #macro 六个指令,以及输出占位和注释转义,保持最小指令集。
3)可扩展性很强,自定义宏,使用java实现部分方法。
4)默认使用HTML注释语法,避免干扰原生HTML页面,方便美工和程序开发者分工。
5)HTTL采用微核+插件体系,所有环节均可扩展或替换,方便集成和二次开发。

HTTL的主要开发者梁飞也是阿里巴巴的dubbo的主要设计者,HTTL代码质量很高。

HTTL与JFinal的整合代码已经提交给梁飞,梁飞已整合进HTTL中。需要集成的

请移步 http://httl.github.io/zh/ 下载最新的1.10版本。


说说使用吧。

配置web.xml

<listener>
    <listener-class>httl.spi.loaders.ServletLoader</listener-class>
  </listener>
  <context-param>
    <param-name>httl.properties</param-name>
    <param-value>/WEB-INF/httl.properties</param-value>
  </context-param>

修改JFinal控制文件。

@Override
	public void configConstant(Constants me) {
		//加载数据库配置文件
		loadPropertyFile("database.properties");
		//设定采用httl模板引擎
		me.setMainRenderFactory(new HttlRenderFactory());
		me.setFlashManager(new EhCacheFlashManager("flashCache"));
		//设定为开发者模式
		me.setDevMode(false);

	}
将httl.properties放在WEB-INF目录下。

配置如下:

import.packages+=com.lh.openapi.manager.model
template.directory=/WEB-INF/templates
template.suffix=.html
input.encoding=UTF-8
output.encoding=UTF-8
reloadable=true
precompiled=true
value.filter=null
localized=false
主要要导入一些包,还有就是模板的目录。

在Controller中的使用:

/**
	 * 显示所有列表
	 */
	public void index(){
		setAttr("schools", School.dao.getAllSchools());
		render("index.html");
	}

其他HTTL使用参见:http://httl.github.io/

打包好的插件JFinalHttlRender-1.0.jar下载地址:

http://git.oschina.net/myaniu/jfinalhttlrender/blob/master/dist/JFinalHttlRender-1.0.jar?raw_enc=us-ascii


© 著作权归作者所有

玛雅牛

玛雅牛

粉丝 487
博文 115
码字总数 28117
作品 4
西安
高级程序员
私信 提问
加载中

评论(6)

JackRenDR
JackRenDR
已经停更了吗?
玛雅牛
玛雅牛 博主
HTTL与JFinal的整合代码已经提交给梁飞,梁飞已整合进HTTL中。需要集成的

请移步 http://httl.github.io/zh/ 下载最新的1.10版本。​
玛雅牛
玛雅牛 博主

引用来自“梁飞”的评论

HTTL已经发布1.0.10,加上了楼主发的集成包,感谢楼主的集成。
http://httl.github.io/download.html

看到了。多谢梁飞啊。以后我自己用也方便了。便人便己。呵呵。
梁飞
梁飞
HTTL已经发布1.0.10,加上了楼主发的集成包,感谢楼主的集成。
http://httl.github.io/download.html
玛雅牛
玛雅牛 博主

引用来自“刘石法”的评论

httl 是你写的?

不是,我仅仅是在JFinal中集成了Httl,Jfinal的集成代码已经提交给httl作者了。估计下一版本httl 中会有jfinal的集成代码。
小石头哥
小石头哥
httl 是你写的?
JFinal整合HTTL编译错误 各种类找不到 官方demo也错误 空白页面也报错

用到的jar Tomcat JDK cmd命令行使用 java -version cmd 命令行运行 javac 各种环境变量配置 Path中包含了 JDK/bin 还有其他很多软件的 就不列出了 IDE 部署配置 部署类型 Maven 系统 HTTL配...

孤单时会想你
2013/12/12
1.4K
11
Httl和JFinal整合遇到的问题

初学httl和JFinal,在整合时遇到了一些问题,希望碰到过的帮忙解答一下。 JFinal整合httl之后,在使用httl中的render()方法进行跳转时,总是提示不能初始化参数,错误代码如下, 出现这种情况...

亦剑灬
2015/04/15
1K
1
给JFinal添加Shiro插件功能,支持Shiro所有注解-HTTL篇

由于使用HTTL模板引擎,所以也想将Shiro和HTTL集成起来。 具体实现如下,此嗲吗和给JFinal添加Shiro插件功能,支持Shiro所有注解-实现篇中的一样。 在httl.properties中添加一行代码。 集成完...

玛雅牛
2013/06/12
3.1K
9
JFinal 3.0 发布,重新定义模板引擎

本次回归码坛为小伙伴们带来的是重新定义过的 Template Engine 将极速开发继续贯彻到 View 层。 Java 模板引擎界已被 Freemarker、Velocity 统治多年,但其在这些年的发展可谓乏善可陈,究其...

JFinal
2017/01/22
2.4W
167
给JFinal添加Shiro插件功能,支持Shiro所有注解

个人实现了给JFinal添加Shiro插件功能,支持Shiro所有注解。 写了三篇博客来介绍,还请@JFinal指点。 给JFinal添加Shiro插件功能,支持Shiro所有注解-实现篇 给JFinal添加Shiro插件功能,支持...

玛雅牛
2013/06/13
6.3K
9

没有更多内容

加载失败,请刷新页面

加载更多

css spirit 位置计算

http://www.spritecow.com/

lemos
2分钟前
5
0
比较Git中的两个分支? [重复] - Comparing two branches in Git? [duplicate]

问题: This question already has an answer here: 这个问题在这里已有答案: Showing which files have changed between two revisions 17 answers 显示两个修订版本之间已更改的文件 17个...

javail
9分钟前
7
0
快速理解闭包

闭包是一个很有意思的东西,理解起来很绕,但是理解后很简单,网上的讲解也朦朦胧胧的.根据自己的理解解释一番: 预备知识:函数中的作用域 python中函数的作用域由def关键字界定,函数内的代码访...

hc321
14分钟前
14
0
Portworx on OpenShift 原理讲解视频

Portworx on RedHat OpenShift https://v.qq.com/x/page/g0975mnzln0.html 欢迎回到Portworx技术讲解系列视频。我们今天介绍红帽Openshift上的Portworx。我们讨论基本的OpenShift部署,包括本...

Portworx
38分钟前
104
0
type_traits类型特征萃取

type_traits库提供一组特征(traits)类——元函数,可以在编译期确定类型是否具有某些特征。 根据返回类型type_traits库里的元函数可以分为以下两大类: 检查元数据属性的值元函数:以::val...

零落年华
43分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部