Beetl 模板引擎 3.15.7 发布,Java 模板引擎
完成需求 I7KEB8,默认运算采用精度运算。
Beetl默认情况下当遇到数字以h结尾的时候,认为是BigDecimal类型,随后运算使用高精度运算。
var a= 3434.33h*233334;
新版本增加配置,不允许显示的使用h表示高精度类型
BIGDECIMAL=true
则默认所有数字都翻译成BigDecimal
Script script = groupTemplate.getScript("return 5/3;",loader); script.execute(); if(script.isSuccess()){ Object value = script.getResult().get("return"); Assert.assertTrue(value instanceof BigDecimal); Assert.assertEquals(value,new BigDecimal(5).divide(new BigDecimal(3),ALU.scale, ALU.round )); }else{ Assert.fail(); }
Maven
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl</artifactId> <version>3.15.7.RELEASE</version> </dependency>
文档 源码 在线体验 模板性能测试 表达式引擎性能测试 性能优化指南
最新模板性能测试,各个模板引擎均采用最新版本, Score 越大越好
Beetl>Rocker>>Freemarker>>Thymeleaf==Velociy
Benchmark Mode Cnt Score Error Units Beetl.benchmark thrpt 5 141912.506 ± 19090.130 ops/s Freemarker.benchmark thrpt 5 48062.783 ± 9054.282 ops/s Handlebars.benchmark thrpt 5 48505.286 ± 6078.944 ops/s Rocker.benchmark thrpt 5 102699.041 ± 11827.123 ops/s Thymeleaf.benchmark thrpt 5 14495.261 ± 1460.815 ops/s Velocity.benchmark thrpt 5 12071.498 ± 4226.219 ops/s
最新规则引擎性能测试,Score 越大越好
JfireEL>> Aviator=Beetl=Jexl3 >>Spel>>Mvel=Groovy>>Nashor
Benchmark Mode Cnt Score Error Units Aviator.forExpresss thrpt 5 501413.321 ± 4657.336 ops/s Aviator.ifExpresss thrpt 5 4699456.542 ± 266831.101 ops/s Aviator.simpleExpress thrpt 5 3868701.018 ± 38439.986 ops/s Beetl.forExpresss thrpt 5 1685875.017 ± 28454.020 ops/s Beetl.ifExpresss thrpt 5 4461489.443 ± 78687.317 ops/s Beetl.reflect thrpt 5 62972.088 ± 85785.390 ops/s Beetl.simpleExpress thrpt 5 4328852.130 ± 144586.699 ops/s Groovy.ifExpresss thrpt 5 119493.364 ± 1472.301 ops/s Groovy.simpleExpress thrpt 5 121724.720 ± 1533.726 ops/s Jexl3.forExpresss thrpt 5 789815.632 ± 42390.393 ops/s Jexl3.ifExpresss thrpt 5 4500714.752 ± 138214.400 ops/s Jexl3.simpleExpress thrpt 5 3901843.173 ± 125472.114 ops/s JfireEL.ifExpresss thrpt 5 28337464.920 ± 291859.385 ops/s JfireEL.simpleExpress thrpt 5 18824292.084 ± 103241.504 ops/s Mvel.forExpresss thrpt 5 11954.857 ± 84.105 ops/s Mvel.ifExpresss thrpt 5 230373.242 ± 1827.288 ops/s Mvel.simpleExpress thrpt 5 316083.646 ± 1320.717 ops/s Nashorn.ifExpresss thrpt 5 10010.541 ± 752.057 ops/s Nashorn.simpleExpress thrpt 5 8993.022 ± 518.940 ops/s Spel.ifExpresss thrpt 5 850338.540 ± 41826.542 ops/s Spel.simpleExpress thrpt 5 636251.839 ±
Beetl.reflect 是指Beetl能像Java反射那样能查询出表达式结构,变量名

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Kstry 1.1.6 发布,流程编排框架&并发框架&微服务业务整合框架
Kstry 1.1.6 已经发布,流程编排框架&并发框架&微服务业务整合框架。 此版本更新内容包括: @TaskService 注解增加 @Iterator 属性定义服务节点遍历相关参数 新增 IterDataItem 对象提供获取遍历项及索引字段功能。节点遍历时,如果该类型在服务节点方法入参中被定义会自动注入 节点遍历时,支持节点方法直接返回某遍历项处理后的结果(批量遍历需要返回list),支持Mono类型返回值,无论是否并发聚合后的遍历处理结果与遍历集合数据项顺序一致 StoryEngine新增 serialize 方法,该方法可以将容器中生效的流程序列化成json字符串,序列化后的Json字符串可直接解析成流程执行,与原流程无异 新增 JsonProcessParser 组件,提供Json转可执行流程的功能。任何协议的图形文件只要转化成符合规范的Json都可被解析执行 提供重新实现 SerializeTracking 功能的入口,可用来自定义 MonitorTracking 追踪的各节点出入参的解析规则,避免大对象序列化成Json时导致的资源占用过多问题 详情查看...
- 下一篇
layui-vue v2.3.3 发布,一个 Vue 3 UI 框架
[新增] layer 组件 titleStyle 属性,用于自定义 title 样式。[新增] upload 组件 beforeUpload 属性 Promise 返回值类型兼容。[修复] index.umd.js 与 index.es.js 中存在 index.css 的 decode 问题。[修复] tag 组件 type 属性为 primary 时不跟随主题色的问题。[修复] layer 组件 border-radius 不跟随 css 变量的问题。[修复] layer 组件 按钮 的 border-radius 不跟随 css 变量的问题。[优化] unpackedSize 大小,由 14.5 MB 改善到 8.5 MB。[优化] index.umd.js 大小,由 2.6 MB 改善到 1.1 MB。[优化] tree 组件 OriginalTreeData 类型,移除 field 无效属性。[优化] tree 组件 data 属性 OriginalTreeData[] 类型兼容。[优化] layer 组件消息通知 border-radius 为 2px。[优化] layer...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19