文档章节

JFinal整合HTTL模板引擎

玛雅牛
 玛雅牛
发布于 2013/06/08 14:37
字数 442
阅读 2220
收藏 14
点赞 0
评论 5

偶然机会看到了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


© 著作权归作者所有

共有 人打赏支持
玛雅牛

玛雅牛

粉丝 477
博文 108
码字总数 27153
作品 4
高级程序员
加载中

评论(5)

玛雅牛
玛雅牛
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 3.4 发布,将极速贯彻到 UI 层

jfinal 的终极目标是全面实现软件开发整个过程的极速开发,极大提升开发效率,极大降低学习成本,极大提升开发体验 jfinal 诞生头五年,已实现 WEB + ORM + AOP 层面的极速开发,赢得了大量开...

JFinal ⋅ 04/28 ⋅ 129

jfinal-admin 3.2 发布,beetl 模板升级到 2.7.14

jfinal-admin 3.2 版本正式发布啦。 基于JFinal的后台管理系统,采用了简洁强大的JFinal作为web框架,模板引擎用的是beetl,数据库用mysql,前端bootstrap框架。 演示地址 http://jad.yxyun...

IT小香猪 ⋅ 04/19 ⋅ 0

JAVA 极速WEB+ORM框架 - JFinal

JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、p...

JFinal ⋅ 2012/03/18 ⋅ 496

spring boot 和 jfinal如何 整合

现在情况比较复杂 之前的项目是用springboot做的 现在想做微信这块 想集成jfinal 微信 最后想打成一个 jar发布就和发布springboot 一样那样 我用的模板 没有webapp文件夹 请问我要整合...

阿木木VS小丁丁 ⋅ 06/06 ⋅ 0

JFinal 1.6可以无缝升级到最高哪个版本?

大约在JFinal 1.6的时候做了一个项目,一直运行至今。中途没升级也没做功能扩展,时至今日,需要做功能升级了,但是时隔太久远,基本不记得JFinal这个框架一路过来的升级过程了。所以想请求帮...

车开源 ⋅ 05/11 ⋅ 0

JFinal如何使用JNDI连接数据库

想用JNDI的方式连接数据库,但是JFinal中用的是DruidPlugin和ActiveRecordPlugin,没有看到用DataSource的地方?请问JFinal支持JNDI连接方式吗?怎么具体实现?...

zqq3436 ⋅ 06/11 ⋅ 0

jfinal兼容oracle integer字段

为什么oracle integer字段用了number(3,0),jfinal生成的字段还是BigDecimal @jfinal

tianxia007 ⋅ 05/02 ⋅ 0

基于注释自动生成 API 文档 - Regan API

Regan API 前言 Regan API 项目是基于注释自动生成api文档,很大缩短了开始与后期维护API接口文档的时间。 Regan API 利用jdk提供的Doclet 类读取文档注释,可手动配置需要读取的文件,同时增...

Jeff_Regan ⋅ 06/15 ⋅ 0

Jboot v1.4.9 发布,核心 JFinal 升级到 3.4 最新版本

Jboot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一配置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生...

理工男海哥 ⋅ 05/03 ⋅ 0

kiplinglee/jfinal-ioc-plugin

jfinal-ioc-plugin JFinal 依赖注入插件 1.在JFinalConfig文件中配置IOC插件 @Overridepublic void configConstant(Constants me) { // 创建controller实现依赖注入me.setControllerFactory......

kiplinglee ⋅ 04/13 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 41分钟前 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

推荐:并发情况下:Java HashMap 形成死循环的原因

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历...

码代码的小司机 ⋅ 昨天 ⋅ 2

聊聊spring cloud gateway的RetryGatewayFilter

序 本文主要研究一下spring cloud gateway的RetryGatewayFilter GatewayAutoConfiguration spring-cloud-gateway-core-2.0.0.RC2-sources.jar!/org/springframework/cloud/gateway/config/G......

go4it ⋅ 昨天 ⋅ 0

创建新用户和授予MySQL中的权限教程

导读 MySQL是一个开源数据库管理软件,可帮助用户存储,组织和以后检索数据。 它有多种选项来授予特定用户在表和数据库中的细微的权限 - 本教程将简要介绍一些选项。 如何创建新用户 在MySQL...

问题终结者 ⋅ 昨天 ⋅ 0

android -------- 颜色的半透明效果配置

最近有朋友问我 Android 背景颜色的半透明效果配置,我网上看资料,总结了一下, 开发中也是常常遇到的,所以来写篇博客 常用的颜色值格式有: RGB ARGB RRGGBB AARRGGBB 这4种 透明度 透明度...

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部