jetbrick template 高性能、高扩展性的Java模板引擎

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

jetbrick-template 刚刚发布了 1.0.2 版。

jetbrick-template 是一个新一代 Java 模板引擎,具有高性能和高扩展性。

适合于动态 HTML 页面输出或者代码生成,可替代 JSP 页面或者 Velocity

等模板。 指令和 Velocity 相似,表达式和 Java 保持一致,易学易用。

image.png

主要特性

  • 支持类似与 Velocity 的多种指令
  • 支持静态编译
  • 支持编译缓存
  • 支持热加载
  • 支持类型推导
  • 支持泛型
  • 支持可变参数方法调用
  • 支持方法重载
  • 支持类似于 Groovy 的方法扩展
  • 支持函数扩展


简单易用的指令

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

详细指令语法,请参考:语法指南。或者和 Velocity 的比较


卓越性能

jetbrick-template 将模板编译成 Java ByteCode

运行,并采用强类型推导,无需反射和减少类型转换。渲染速度等价于 Java

硬编码。比 Velocity 等模板快一个数量级。 比 JSP 也快,因为 JSP 只有

Scriptlet 是编译的,Tag 和 EL 都是解释执行的。 而 jetbrick-template

是全编译的。

image.png

在 Stream 模式中(Webapp 采用 OutputStream 将文本输出到浏览器),由于 Java

硬编码输出字符串需要进行一次编码的转换。 而 jetbrick-template

却在第一次运行期间就缓存了编码转换结果,使得 jetbrick-template

的性能甚至优于 Java 硬编码。

具体测试用例,请参考:Template Engine Benchmark Test (platform: Window 7 x64, Intel i5,

16GB RAM, JDK 1.6.0_41 x64)


易于集成

可以和市面上常见的 Web MVC framework 进行集成。

具体集成方法,请参考: 框架集成


友好的错误提示

具有详细的模板解析和编译错误提示,出错提示可以定位到原始模板所在的行号。

相关文章
|
2月前
|
监控 Java 测试技术
Java并发编程最佳实践:设计高性能的多线程系统
Java并发编程最佳实践:设计高性能的多线程系统
43 1
|
2月前
|
缓存 Java Maven
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
|
2月前
|
缓存 Java Spring
Java本地高性能缓存实践问题之Caffeine中设置刷新机制的问题如何解决
Java本地高性能缓存实践问题之Caffeine中设置刷新机制的问题如何解决
|
2月前
|
存储 缓存 Java
Java本地高性能缓存实践问题之如何定义Caffeine的缓存
Java本地高性能缓存实践问题之如何定义Caffeine的缓存
|
2月前
|
缓存 Java
Java本地高性能缓存实践问题之Caffeine缓存库中基于时间设置驱逐策略的问题如何解决
Java本地高性能缓存实践问题之Caffeine缓存库中基于时间设置驱逐策略的问题如何解决
|
2月前
|
缓存 Java
Java本地高性能缓存实践问题之AsyncCache中移除一个缓存元素的问题如何解决
Java本地高性能缓存实践问题之AsyncCache中移除一个缓存元素的问题如何解决
|
22天前
|
Kubernetes Cloud Native Java
探索未来编程新纪元:Quarkus带你秒建高性能Kubernetes原生Java应用,云原生时代的技术狂欢!
Quarkus 是专为 Kubernetes 设计的全栈云原生 Java 框架,凭借其轻量级、快速启动及高效执行特性,在 Java 社区脱颖而出。通过编译时优化与原生镜像支持,Quarkus 提升了应用性能,同时保持了 Java 的熟悉度与灵活性。本文将指导你从创建项目、编写 REST 控制器到构建与部署 Kubernetes 原生镜像的全过程,让你快速上手 Quarkus,体验高效开发与部署的乐趣。
19 0
|
2月前
|
缓存 Java Maven
Java本地高性能缓存实践问题之缓存中获取用户信息的问题如何解决
Java本地高性能缓存实践问题之缓存中获取用户信息的问题如何解决
|
2月前
|
存储 缓存 Java
Java本地高性能缓存实践问题之使用@CachePut注解来更新缓存中数据的问题如何解决
Java本地高性能缓存实践问题之使用@CachePut注解来更新缓存中数据的问题如何解决
|
2月前
|
缓存 Java Spring
Java本地高性能缓存实践问题之在Spring Boot中启用缓存支持的问题如何解决
Java本地高性能缓存实践问题之在Spring Boot中启用缓存支持的问题如何解决