MVEL为 MVFLEX Expression Language(MVFLEX表达式语言)的缩写,它是一种动态/静态的可嵌入的表达式语言和为Java平台提供Runtime(运行时)的语言。最初是作为一个应用程序框架实用程序的语言开始,该项目现已发展完全独立。MVEL通常用于执行用户(程序员)通过配置XML文件或注释等定义的基本逻辑。它也可以用来解析简单的JavaBean表达式。Runtime(运行时)允许MVEL表达式通过解释执行或者预编译生成字节码后执行。
下面介绍下如何使用MVEL。
首先,从MVEL的主页http://mvel.codehaus.org/Downloading+MVEL下载MVEL,目前版本为2.0.18,支持JDK1.5以上版本。
下载完后,新建MvelDemo工程,添加mvel2-2.0.18.jar到Build Path。
编写测试代码,示例如下:
public class MVELTest {
public static void main(String[] args) {
String expression = "foobar > 99";
Map vars = new HashMap();
vars.put("foobar", new Integer(100));
// We know this expression should return a boolean.
Boolean result = (Boolean) MVEL.eval(expression, vars);
if (result.booleanValue()) {
System.out.println("It works!");
}
}
}
执行结果为:It works!
以上简单介绍了下MVEL,以及如何在你的代码中使用MVEL。
如果想对MVEL有更多了解,可以阅读MVEL官方文档。
分享到:
相关推荐
计算单自由度的地震反应程序使用MATLAB ...该程序是一个功能强大且易于使用的MATLAB程序,能够快速地计算单自由度系统的地震反应谱。但是,程序的应用范围有限,需要根据实际情况进行修改和完善。
- 表达式与变量:如何使用MVEL或EL表达式处理流程中的动态行为,以及如何定义和使用流程变量。 4. **流程定义与部署** - 工具支持:如使用Eclipse的Activiti插件进行流程图设计。 - 流程定义的XML结构:解释流程...
1. 表达式语言:Activiti支持使用MVEL和EL表达式进行动态计算,如设置任务分配规则。 2. 任务服务(Task Service):处理任务相关的操作,如查询任务、领取任务、提交任务等。 3. 运行时服务(Runtime Service):...
1. **简介** 在现代软件开发中,业务逻辑往往复杂且易变,传统的编程方式难以灵活应对业务规则的变化。因此,规则引擎应运而生,它是一种能够处理和执行业务规则的软件系统,旨在使业务决策与应用程序代码分离。...