java执行js脚本

今天突然看到java执行js脚本这玩意挺有味道的哈,我觉得针对一些需要经常变动算法的计税或者相关的软件很有用的哦、直接修改js脚本就好了、都不用动代码、项目也不用重新部署、弄个小demo、mark一下。

java代码:

//获取脚本引擎
		ScriptEngine scriptEngine=new ScriptEngineManager().getEngineByName("javascript");
		//绑定变量
		Bindings bind=scriptEngine.createBindings();
		//为js变量赋值
		bind.put("content", 10);
		//上下文作用域
		scriptEngine.setBindings(bind, ScriptContext.ENGINE_SCOPE);
		
		int param=100;
		//加载js代码
		try {
			scriptEngine.eval(new FileReader("js/demo.js"));
			if (scriptEngine instanceof Invocable) {
				Invocable invocable=(Invocable) scriptEngine;
				Double out=(Double) invocable.invokeFunction("add", param);
				System.out.println(out);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (ScriptException e) {
			e.printStackTrace();
		} catch (NoSuchMethodException e) {
			e.printStackTrace();
		}
js代码:
//小测试
function add(param){
	return param+content;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值