博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BeanShell 跟jdk js引擎使用记录
阅读量:6323 次
发布时间:2019-06-22

本文共 994 字,大约阅读时间需要 3 分钟。

hot3.png

        今天看到 这个帖子,原来自己是使用beanshell解决这个问题,看到有人回答用js引擎这个东西,也都拿来试试看怎么玩这个东西,记录之。

        一般运行这种公式,可以用来做公式定义器,获取是规则引擎之类的,感觉还是挺有用的,挺好玩的。

        beanShell是这样玩的:

    

public static void testBeanShell() throws EvalError {		Interpreter interpreter = new Interpreter();		//设置参数		interpreter.set("param", "12312-");		//运行脚本		Object result = interpreter.eval(" int k=1+2*3+3/4-2*6/3-2+4;"				+ "System.out.println(param);" + "return k ");		System.out.println(result);	}
        js引擎是这么玩:

public static void testJsEngine() throws ScriptException,			NoSuchMethodException {		//javascript引擎获取		ScriptEngineManager manager = new ScriptEngineManager();		ScriptEngine engine = manager.getEngineByName("js");		Object result = 1;		String script = " function test(params){var k =1+2*3+3/4-2*6/3-2+4;println(params+k); return k; }";		//		编译		engine.eval(script);		//		调用对应function		Invocable inv = (Invocable) engine;		Object res = inv.invokeFunction("test", result);		//		输出返回值		System.out.println(res);	}

转载于:https://my.oschina.net/fattian/blog/133518

你可能感兴趣的文章
python---random模块使用详解
查看>>
记一次诡异的故障排查经历
查看>>
NRedis-Proxy 高性能Redis 中间件服务原理解析
查看>>
brew一直卡在Updating Homebrew的解决办法
查看>>
C# 创建EXCEL图表并保存为图片
查看>>
漂亮得不像触控板,全新 Magic Trackpad 2
查看>>
TIA WinCC Professional入门经典(1)组态第一个WinCC项目
查看>>
java多线程系列:Semaphore和Exchanger
查看>>
Linux命令之awk
查看>>
Android--绑定服务调用服务的方法
查看>>
SQL Server数据库有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式...
查看>>
pycharm 常用快捷键
查看>>
获中科院战略投资,开启人工智能大应用时代
查看>>
Vue 实战 (一) -- Vue 基础总结
查看>>
为什么说 Java 程序员到了必须掌握 Spring Boot 的时候?
查看>>
Spring Cloud Data Flow 2.0.1 GA 发布
查看>>
WPS Office 2019 For Linux 8372 个人版发布
查看>>
Google Material Design的图标字体使用教程
查看>>
祝贺| 蚂蚁金服年轻交互设计师陈凯翔,荣获HCII 2018 最佳论文奖
查看>>
强大的脚手架:vue-cli 3.x UI控制台初体验
查看>>