Beetl研发自2010年,国内流行Java模板引擎
文档 源码 在线体验 模板性能测试 表达式引擎性能测试 性能优化指南
本次调整
* 修复自从2019年Beeetl2升级到Beetl3,不支持自定义方法提供的Context参数问题修复
public class MyUtil{ // 模板中 ${util.add(1)} public static int add(int x,Context ctx){ return x+ (Integer)ctx.getGlobal("otherVar")} }
Maven
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl</artifactId> <version>3.15.12.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 反射那样能查询出表达式结构,变量名
还没有评论,来说两句吧...