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

Enjoy

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

Enjoy 是基于 Java 语言的极轻量极魔板引擎。极轻量级仅 260 KB 并且不依赖任何第三方。极简设计仅 if、for、switch、set、define、include、render 七个核心指令,让学习成本低到极致。独创 DKFF(Dynamic Key Feature Forward) 词法分析算法与 DLRD (Double Layer Recursive Descent)语法分析算法,避免使用 javacc、antlr、jflex 生成器,令代码量少到极致。

Enjoy 主要特点

  • 消灭传统模板引擎中大量繁杂概念,仅七个核心指令,学习成本极低
  • 独创 DKFF 词法分析算法与 DLRD 语法分析算法,避免使用 javacc、antlr
  • 与 java 打通式设计,在模板中与 java 交互极为方便
  • 贴近 java 使用直觉,为 java 开发者量身打造
  • 功能强大,极为简单覆盖掉 freemarker、velocity 的核心功能
  • 扩展性强,支持多种扩展方式,且是唯一支持指令级扩展的模板引擎
  • 回归模板引擎渲染 View 数据的本质,采用指令式设计,避免 view 层表达复杂逻辑
  • 体积小,仅 227 KB,且不依赖于任何第三方

maven 坐标

<dependency>
    <groupId>com.jfinal</groupId>
    <artifactId>enjoy</artifactId>
    <version>5.0.3</version>
</dependency>

极速上手

#for(user : userList)
  #(user.name)
#end

#if(user.girl && user.age == 18)
   #(user.name)
#end

集成 spring

<bean id="viewResolver" class="com.jfinal.template.ext.spring.JFinalViewResolver">
    <!-- 是否热加载模板文件 -->
    <property name="devMode" value="true" />
    <!-- 配置shared function,多文件用逗号分隔 -->
    <property name="sharedFunction" value="/view/_layout.html, /view/_paginate.html" />
    
    <!-- 是否支持以 #(session.value) 的方式访问 session -->
    <property name="sessionInView" value="true" />
    <property name="prefix" value="/view/" />
    <property name="suffix" value=".html" />
    <property name="order" value="1" />
    <property name="contentType" value="text/html; charset=utf-8" />
</bean>

更多使用方法见文档

https://jfinal.com/doc/6-1

  • --用不到的时候,不要手里有锤子就看谁都像是钉子 Enjoy 是基于 Java 语言的极度轻量级魔板引擎。仅 171K 并且不依赖任何第三方。极简设计仅 if、for、switch、set、define、include、render 七个核心指令,让学习成本低到极致。 Enjoy coding and enjoy life https://www.jfinal.com/doc/6-1   Enjo

  • 友情提示:本篇总结,主要是便于自己 能有个“全局的认识”。具体学习和使用,参考官网。 经验:对一个事物、事情,如果先有个全局的认识,学习起来快多了。有没有全局认识,也是检验掌握这个事的关键信号。   分享特色:简单、简洁、有用、能用。 一、模版引擎,解决的问题 1、Web开发,前后端不分离时,页面渲染   2、通用场景 邮件模版、短信模版、PDF预览(签字协议、合同)、基于模版的代码生成器   3

  • 三月,平凡又不凡的一个月。 English:    小组topic    多么庆幸我身旁多了一位小伙伴陪我,带给我很多的欢乐。大大咧咧的性格却不失女子那番闭月羞花之容,沉鱼落雁之貌。关键是还能讲一口流利的英文,羡慕,也在努力向她靠近,因为我也喜欢外语,喜欢着你。无奈自己没能一直保持激情放在英语上,总是和搭档时而又时而。搭档了那么久的搭档,快一个月没有认真的联系过,难言的感觉。还好现在遇到美女同桌,

 相关资料
  • 本文向大家介绍浅谈轻量级js模板引擎simplite,包括了浅谈轻量级js模板引擎simplite的使用技巧和注意事项,需要的朋友参考一下 模板地址:https://github.com/zhangshaolong/simplite欢迎各位提出宝贵意见及贡献代码。特点: 1:代码量少,学习成本低; 2:默认jsp语法标签方式,熟悉jsp的朋友可以直接按照jsp的语法书写模板; 3:使用原生js语法

  • 本文向大家介绍javascript轻量级模板引擎juicer使用指南,包括了javascript轻量级模板引擎juicer使用指南的使用技巧和注意事项,需要的朋友参考一下 使用方法 编译模板并根据数据立即渲染出结果 仅编译模板暂不渲染,返回一个可重用的编译后的函数 根据给定的数据对之前编译好的模板进行渲染 注册/注销自定义函数(对象) 默认参数配置 修改默认配置,逐条修改 修改默认配置,批量修改

  • 问题内容: 编写新的工作流引擎还是使用现有的BPM引擎更好吗:jBPM 5,Activiti 5? 我的应用程序是基于Web的应用程序,性能非常重要。我的疑问是,与编写简单的工作流引擎相比,使用jBPM / Activiti是否会增加性能开销。 如果我采用自我实现,我会错过工作流程的可视化。为了性能,可以进行交易。 问题答案: 这确实取决于您的要求。首先,查看您是否真的需要工作流引擎(此资源或其他

  • 具体查看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