jsel性能测试 感觉性能不行啊

1000000次 ===>15393毫秒 100000次 ===>2111毫秒
和前面的几个框架比起来差很远啊

使用的是Lite-20111106.jar,已经是最近的版本了,其实一看名字就是2011年的,,,
jar包下载地址:https://code.google.com/p/lite/downloads/list



package com.eyu.ahxy.module.expression.jsel;

import java.util.HashMap;
import java.util.Map;

import org.junit.Test;
import org.xidea.el.Expression;
import org.xidea.el.impl.ExpressionFactoryImpl;

/**
 * 1000000次 ===>15393毫秒 100000次 ===>2111毫秒
 * @author bean
 */
public class JselComplexTest {
	
	String exp = "Math.min(Math.floor(test.a*test.getB()),Math.floor(c+d*e))";
	
	Expression expression=ExpressionFactoryImpl.getInstance().create(exp);
	
	static Map<String, Object> map = new HashMap<>();
	static {
		map.put("test", new JselComplexTest());
		map.put("Math", Math.class);
		map.put("c", 10);
		map.put("d", 10);
		map.put("e", 2);

	}

	public static final int NUM = 1000000;

	public int getA() {
		return 10;
	}

	public int getB() {
		return 10;
	}

	@Test
	public void compileTest() throws Exception {
		for (int i = 0; i < NUM; i++) {
			Object result = expression.evaluate(map);
//			System.err.println("========="+result);
		}
	}

}


你可能感兴趣的:(性能测试)