mvel的执行方式分为两种:一种解释执行和编译执行.解释模式是一个无状态的,动态解释执行。不像编译模式需要负载表达式,他不需要就可以执行相应的脚本。编译模式需要在缓存中产生一个完全规范化表达式之后再执行.表达式通常被称为speed-sensitive应用,第二个选项可能会更好。
Dependencies
要使用mvel只需要一个mvel.jar即可
The MVEL Convenience Class
为了使得使用简单和直接,mvel大部分的接口使用了静态方法,使得你在应用程序中可以直接使用
几乎所有的交互将围绕org.mvel2.MVEL类的使用。
Interpreted Mode
正如本节所介绍,解释模式是一种快速、动态parser-interpreterMVEL,所谓的快是,指的是相比一些其他的EL实现.
调用解释器主要集中在MVEL类中的eval()方法。
Integration Example: MVELTest.java
import org.mvel.MVEL; 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 expressionshould return a boolean. Boolean result = (Boolean)MVEL.eval(expression, vars); if (result.booleanValue()) { System.out.println("Itworks!"); } } }
Compiled Mode
编译和执行一个表达式,需要做的不是简单地调用一个方