关闭

jexl解析字符串表达式

标签: javajavaweb
1800人阅读 评论(0) 收藏 举报

具体也不是非常非常了解:按照流程走吧,希望对各位有丁点帮助

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

import org.apache.commons.jexl2.Expression;
import org.apache.commons.jexl2.JexlContext;
import org.apache.commons.jexl2.JexlEngine;
import org.apache.commons.jexl2.MapContext;


public class jexl {
	public static void main(String[] args) {
		Map<String,Object> map = new HashMap<String,Object>();
		JexlEngine jexlEngine = new JexlEngine();
		Expression expression = jexlEngine.createExpression("c.orgid");
		map.put("a.orgid", 555);
		map.put("b.orgid", 666);
		map.put("c.orgid", 777);
		JexlContext content = new MapContext(map);
		System.out.println(expression.evaluate(content));
	}
}
输出:777


若把map修改为

map.put("orasdfgid", 666);
map.put("asdfd", 777);
map.put("orgid", 555);
输出:555


继续修改

map.put("orasdfgid", 666);
map.put("asdfd", 777);
map.put("orgd", 555);
输出报错:

null
一月 03, 2017 5:15:04 下午 org.apache.commons.jexl2.Interpreter unknownVariable
警告: jexl.main@14![0,7]: 'c.orgid;' undefined variable c.orgid



1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

利用JEXL实现动态表达式编译

JEXL
  • u012468264
  • u012468264
  • 2017-02-23 20:30
  • 2123

一种表达式语言的解析引擎JEXL简单使用

Jexl 是一个 Expression Language 的解析引擎, 是为了方便嵌入你的系统或者程序框架的开发中, 他算是实现了 JSTL 中 EL 的延伸版本. 不过也采用了一些 Vel...
  • beijing20120926
  • beijing20120926
  • 2013-12-31 15:23
  • 2523

jexl实例下载

  • 2014-04-10 17:53
  • 927KB
  • 下载

jexl表达式应用

jexl表达式应用package com.exp;import junit.framework.TestCase;import org.apache.commons.jexl2.Expression;...
  • huryer
  • huryer
  • 2016-04-19 18:08
  • 4239

jexl解析表达式字符串

在java中,解析表达式字符串并完成计算方法如下: String jexlExp="1*2+6/(2+4)";Expression e=ExpressionFactory.createExpressi...
  • luotangsha
  • luotangsha
  • 2011-07-17 00:02
  • 2878

Jexl解析表达式

例1: public static void main(String[] args) { Map params =new HashMap<>(); params.put("id"...
  • shang02
  • shang02
  • 2016-10-28 16:53
  • 1743

Apache Commons JEXL

Apache Commons JEXLJEXL is a library intended to facilitate the implementation of dynamic and script...
  • zhaoyayua
  • zhaoyayua
  • 2016-08-17 14:15
  • 1089

Commons JEXL 示例详解

Jexl 是一个 Expression Language 的解析引擎, 是为了方便嵌入你的系统或者程序框架的开发中, 他算是实现了 JSTL 中 EL 的延伸版本. 不过也采用了一些 Vel...
  • xiaomin1991222
  • xiaomin1991222
  • 2016-03-10 16:05
  • 1437

JEXL

learning site            http://commons.apache.org/jexl/Expression calculate    ...
  • DGenerationX
  • DGenerationX
  • 2009-04-14 17:06
  • 3476

利用JEXL实现动态表达式编译

JEXL
  • u012468264
  • u012468264
  • 2017-02-23 20:30
  • 2123
    个人资料
    • 访问:66593次
    • 积分:892
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:7篇
    • 译文:0篇
    • 评论:10条
    文章分类
    最新评论