当前位置:网站首页>Beetl使用记录
Beetl使用记录
2022-08-08 15:43:00 【InfoQ】
Beetl
使用记录
POM
<dependency>
<groupId>com.ibeetl</groupId>
<artifactId>beetl</artifactId>
<version>${version}</version>
</dependency>
基础语法
- 条件判断 :除常规if-else,switch-case外,增加了switch-case增强语法,省略break关键字,多个条件使用,隔开
- 循环:常规for(exp;exp;exp),while,for-in都支持
- for-in:中额外增加了内置变量
- 变量名LP.index当前的索引,从1开始
- 变量名LP.even 索引是否是偶数
- 变量名LP.odd 索引是否是奇数
- 变量名LP.first 是否是第一个
- 变量名LP.last 是否是最后一个
- 变量名LP.dataIndex索引,从0开始
- 变量名P.size集合的长度
- elsefor:表示未进入for循环的处理
<%
var list = [];
for(item in list){
}elsefor{
print("未有记录");
}
%>
解析字符串模版
StringTemplateResourceLoader resourceLoader = new StringTemplateResourceLoader();
Configuration cfg = Configuration.defaultConfiguration();
GroupTemplate gt = new GroupTemplate(resourceLoader, cfg);
String templateStr = "${json(_root)}";
Template template = gt.getTemplate(templateStr);
Map<String,Object> map = new HashMap<>();
map.put("a",123);
map.put("b","ada");
template.binding("_root",map);
System.out.println(template.render());
- tempStr:字符串模板
- _root:根变量,使用根变量则属性访问可省略前缀
- json():内置函数,可将变量转换为json字符串,可作为代码执行后的输出存储
- 实现Function接口,这类方法参照配置文件中配置简写即可访问,配置文件中以FN.作为前缀的配置
- 独立的工具类:strutil 字符串工具类,配置文件中以FNP.作为前缀的配置,访问时通过strutil.方法名访问.
${@com.xxxx.constants.Order.getMaxNum()}
<%
var max = @com.xxxx.constants.Order.MAX_NUM;
%>
参考资料
边栏推荐
猜你喜欢
腾讯超大 Apache Pulsar 集群的客户端性能调优实践
看到这个应用上下线方式,不禁感叹:优雅,太优雅了!
Tungsten Fabric SDN — OpenStack 与 Kubernetes 异构集群统一 SDN 方案
leetcode 31. 下一个排列(实现next_permutation 函数)
一文搞懂│XSS攻击、SQL注入、CSRF攻击、DDOS攻击、DNS劫持
sqoop连接MySQL跟本机不一致是为什么
带你玩转“超大杯”ECS特性及实验踩坑【华为云至简致远】
【云原生】-MySQL压测神器HammerDB的部署及使用
我分析30w条数据后发现,西安新房公摊最低的竟是这里?
国产数据库的红利还能“吃”多久?
随机推荐
【Unity入门计划】制作RubyAdventure02-处理瓦片地图&碰撞
Shell三剑客之sed命令详解
Jingdong T9 pure hand type 688 pages of god notes, SSM framework integrates Redis to build efficient Internet applications
京东T9纯手打688页神笔记,SSM框架整合Redis搭建高效互联网应用
Mysql数据库入门学习笔记
解决Redis、MySQL缓存双写不一致问题
All volunteers V853 chip Tina RTSP environment set up
用于视觉语言导航的自监督三维语义表示学习
【服务器数据恢复】Ext4文件系统fsck后mount不上并报错的数据修复案例
使用pymongo,将MongoDB生成的ObjectId类型数据与字符串之间的相互转化
企业开发小程序有什么优势?为什么要开发小程序?
Chat with wine and chat, build an asynchronous non-blocking (aioredis) real-time (websocket) communication chat system based on Vue3.0+Tornado6.1+Redis publish-subscribe (pubsub) mode
C#/VB.NET 将PDF转为PDF/X-1a:2001
一文搞懂│XSS攻击、SQL注入、CSRF攻击、DDOS攻击、DNS劫持
在通达信开户安全不呢
基于LEAP模型的能源环境发展、碳排放建模预测及不确定性分析
C#/VB.NET convert PDF to PDF/X-1a:2001
本博客目录及版权申明
[Unity entry plan] Use the double blood bar method to control the blood loss speed of the damage area
What is low-code development?Is everyone really optimistic about low-code development?