当前位置: 首页 > 软件库 > 程序开发 > 模板引擎 >

jetbrick-template

Java 模板引擎
授权协议 Apache
开发语言 Java
所属分类 程序开发、 模板引擎
软件类型 开源软件
地区 国产
投 递 者 武睿
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

jetbrick-template 是一个新一代 Java 模板引擎,具有高性能和高扩展性。 适合于动态 HTML 页面输出或者代码生成,可替代 JSP 页面或者 Velocity 等模板。 指令和 Velocity 相似,表达式和 Java 保持一致,易学易用。

  • 支持类似与 Velocity 的多种指令
  • 支持静态编译
  • 支持编译缓存
  • 支持热加载
  • 支持类型推导
  • 支持泛型
  • 支持可变参数方法调用
  • 支持方法重载
  • 支持类似于 Groovy 的方法扩展
  • 支持函数扩展
  • 支持自定义标签 #tag
  • 支持宏定义 #macro
  • 支持布局 Layout

简单易用的指令

jetbrick-template 指令集和老牌的模板引擎 Velocity 非常相似,易学易用。

#define(List<UserInfo> userlist)
<table>
  <tr>
    <td>序号</td>
    <td>姓名</td>
    <td>邮箱</td>
  </tr>
  #for (UserInfo user : userlist)
  <tr>
    <td>${for.index}</td>
    <td>${user.name}</td>
    <td>${user.email}</td>
  </tr>
  #end
</table>

卓越性能 Performance

jetbrick-template 将模板编译成 Java ByteCode 运行,并采用强类型推导,无需反射和减少类型转换。渲染速度等价于 Java 硬编码。比 Velocity 等模板快一个数量级。 比 JSP 也快,因为 JSP 只有 Scriptlet 是编译的,Tag 和 EL 都是解释执行的。 而 jetbrick-template 是全编译的。

在 Stream 模式中(Webapp 采用 OutputStream 将文本输出到浏览器),由于 Java 硬编码输出字符串需要进行一次编码的转换。 而 jetbrick-template 却在第一次运行期间就缓存了编码转换结果,使得 jetbrick-template 的性能甚至优于 Java 硬编码。

  • 语法参见:http://subchen.github.io/jetbrick-template/2x/syntax-value.html 文本 转义字符 \ 原样输出文本块 #[[ 文本快 ]]# 注释 单行注释 #// ## 多行注释 #

  • §全局配置选项 §1. 全局定义(包/类/变量) 在模板中,如果要用到一些其他的 Class, 那么可以先 import 进来,这样就可以在模板中使用短名字,比如 Date 而不是 java.util.Date。 §1.1 jetx.import.classes 用来配置默认导入的 class,多个 import,用逗号分隔。 支持三种方式,如下: jetbrick.schema.app.mode

  • 1 在 jetbrick-template 中如何实现 layout 功能 通常页面都有一个布局,大体上有页面头部,尾部,以及正文三部分。头部和尾部内容基本上固定,只有正文是变化的。 jetbrick-template 可以使用 3 种方法实现模板的 layout 功能。 #include(file, ...) 指令 #tag layout(file, ...) 标签 #tag block(nam

  • 更新历史: [新增] #50 增加 Jodd Madvoc 的集成支持 [新增] #56 增加 MultipathResourceLoader,支持多个模板路径 [增强] #52 增强 asDate() 方法,默认支持更多的格式,比如 ISO8601, RFC 822 [增强] #55 对#for指令的增强建议 [增强] #57 增强 template.path 和 compile.path 的配

  • 全面超越 Velocity 的全新一代 Java 模板引擎 jetbrick-template 1.1.1 正式版发布。 新版增强了 layout 功能,并修复大量 bug。 #tag block("bodyContent1") BODY 1111 #end #tag block("bodyContent2") BODY 2222 #end #include ("layout.je

  • jetbrick-template也是一种高效的模板引擎。 jetbrick-template官方地址::http://subchen.github.io/jetbrick-template/1x/syntax.html,官网上的内容比较详细,仔细看一遍,操作也很简单的。 1.概述:         最近项目中使用到了模板,领导让鄙人上网查找一个模板工具类,自己看了FreeMarker,Veloc

  • Version 1.0.2 (2013-11-22) [修复] #8 jetx 模板生成的 java 文件名可能会产生冲突 [增强] #9 如果 compile.path 对应的目录非法或者没有权限不可写, 应该启动Engine时就报错 [新增] #10 增加选项:compile.always 第一次访问模板强制编译 [修复] #11 模板的路径如有使用 “../../file.jetx” 那么就

 相关资料
  • jetbrick 是什么? jetbrick 是一个用 Java 开发的轻量级框架。追求快速上手和高效开发。用少量的代码来实现强大的功能。极大的提高用户的开发效率,节约宝贵的时间。 jetbrick 的组成部分 组件 说明 jetbrick-commons 常用 Utils 类库 jetbrick-webmvc 灵活的 MVC 框架 jetbrick-template 高性能的 Java 模板引擎

  • 具体查看ejs官方文档 https://github.com/mde/ejs

  • 我们自己实现了一个轻量级的模板引擎,不要问为什么不用smart之类的,因为我们认为没有必要为了一个小小的模板引擎而引入smaart这样复杂的实现。你可能会说,smart功能强大,支持各种标签,标签也是很强大,而且还可以对模板引擎进行各种"灵活"的配置... 这里我们觉得有必要说明一下: 框架的内置模板引擎基本上实现了我们日常开中所有常用的标签。 不常用的标签我们也做了巧妙的实现。 我们只提供了扩展

  • 内置模板引擎 视图的模板文件可以支持不同的解析规则,默认情况下无需手动初始化模板引擎。 可以通过下面的几种方式对模板引擎进行初始化。 配置文件 内置模板引擎的参数统一在配置目录的template.php文件中配置,例如: return [ // 模板引擎类型 支持 php think 支持扩展 'type' => 'Think', // 模板路径 '

  • Warning: The packages listed below may be outdated, no longer maintained or even broken. Listing here does not constitute an endorsement or recommendation from the Expressjs project team. Use at your

  • Use the app.engine(ext, callback) method to create your own template engine. ext refers to the file extension, and callback is the template engine function, which accepts the following items as parame