您的位置:首页 > 编程语言 > Java开发

Java表达式求值器 汇总

2011-07-15 12:50 405 查看
一. Aviator 轻量级高性能Java表达式求值器
Aviator是一个轻量级的、高性能的Java表达式求值器,主要应用在工作流引擎节点条件判断、MQ中的消息过滤以及某些特定的业务场景中。

Aviator的设计思路跟利用GroovyObject的求值思路是一样的,通过编译并动态生成字节码的方式将表达式编译成一个类,然后反射执行这个类,因此会在效率上比纯解释执行的IKExpression好一些。


自从上次发布1.0后,还发过1.01版本,不过都没怎么宣传。这次发布一个2.0的里程碑版本,主要改进如下:

1、完整支持位运算符,与java完全一致。
2、优化了性能,平均性能提升100%,函数调用性能提升200%,最新的groovy和JEXL的性能测试看这里 http://code.google.com/p/aviator/wiki/Performance
3、添加了新函数,包括long、double、str等用于类型转换的函数,添加了string.indexOf函数。
4、完善了用户手册,更新了性能测试。

下载地址: http://code.google.com/p/aviator/downloads/list 项目主页: http://code.google.com/p/aviator/
用户指南: http://code.google.com/p/aviator/w/list
性能报告: http://code.google.com/p/aviator/wiki/Performance
源码: https://github.com/killme2008/aviator
二. BeanShell
BeanShell是一种Java 解释器,它包含的脚本语言基本与Java 语言兼容,具有体积小、简单、符合Java 风格等特点。类似的Java脚本技术还有DynamicJ等.
一个BeanShell实现的公式管理的系统文档:http://www.ibm.com/developerworks/cn/java/l-formula/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: