java将字符串转换成可执行代码
来源:互联网 发布:汉仪菱心体简 for mac 编辑:程序博客网 时间:2024/05/16 05:42
使用commons的jexl可实现将字符串变成可执行代码的功能
通用工具类:
/** * * @author: Longjun * @Description: 使用commons的jexl可实现将字符串变成可执行代码的功能 * @date:2016年3月21日 下午1:45:13 */public static Object convertToCode(String jexlExp,Map<String,Object> map){ JexlEngine jexl=new JexlEngine(); Expression e = jexl.createExpression(jexlExp); JexlContext jc = new MapContext(); for(String key:map.keySet()){ jc.set(key, map.get(key)); } if(null==e.evaluate(jc)){ return ""; } return e.evaluate(jc); }
调用示例1:
public static void main(String[] args) {try {Map<String,Object> map=new HashMap<String,Object>(); map.put("money",2100); String expression="money>=2000&&money<=4000"; Object code = convertToCode(expression,map);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}code输出是true;
调用示例2:
public static void main(String[] args) {try {Map<String,Object> map=new HashMap<String,Object>(); map.put("testService",testService); map.put("person",person); String expression="testService.save(person)"; convertToCode(expression,map); } catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}
所需jar包:commons-jexl-2.0.jar
下载连接:http://download.csdn.net/detail/junlong750/9468052
maven配置:
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-jexl</artifactId><version>2.0</version></dependency>
0 0
- java将字符串转换成可执行代码
- Java实现字符串转换成可执行代码
- java实现字符串转换成可执行代码
- java实现字符串转换成可执行代码
- Java代码 将字符串转换成整数
- 将字符串转成可执行的代码
- Linux:将java代码打包成可执行的jar包
- 将图片转换为base64字符串Java代码(未测试)
- 将JAVA对象转换成JSON字符串
- java将字符串转换成图片
- 将JAVA对象转换成JSON字符串
- 将java对象转换成json字符串
- 将字符串转换成java逻辑运算
- java将十六进制字符串转换成图片
- Java将字节数组转换成字符串
- 将字符串转换成整数[Java]
- java代码将汉字转换成拼音
- java代码将汉字转换成拼音
- 自定义注册内容观察者
- Tell me about yourself
- linux2.6内核的DAC数据结构(传统9Bit模式、ACL模式)
- fedora C ncurses 贪吃蛇
- 使用C++日志库log4cplus
- java将字符串转换成可执行代码
- cropper插件实现头像截取
- Spring缓存注解@Cacheable、@CacheEvict、@CachePut使用
- 利用CentOS自带SSH服务搭建SFTP服务器
- wampserver3.0 图标为黄色解决
- xml基本语法
- 数据库的锁机制
- BootStrap的日历插件的使用
- 玩转快速排序