java 脚本引擎执行javascript脚本
java脚本引擎是从JDK6.0之后添加的新功能,语法使用Rhino。
public class ScriptTest {public static void main(String args[]) throws ScriptException, NoSuchMethodException, IOException {ScriptEngineManager manager = new ScriptEngineManager();ScriptEngine engine = manager.getEngineByName("javascript");//声明一个msg 变量engine.put("msg","this is msg!");String jsCode = "var a = 10; var b =20;println(a+b);";//执行javascript代码engine.eval(jsCode);//修改变量engine.eval("msg = 'this is msg2!';println(msg);");//使用java获取变量System.err.println(engine.get("msg"));//执行js方法String jsFunc="function add(a,b){return a+b}";engine.eval(jsFunc);Invocable invocable = (Invocable) engine;Object res = invocable.invokeFunction("add",new Object[]{5,7});System.err.println(res);//在脚本中使用javaString importJava = "importPackage(java.util);var list = Arrays.asList([\"嘻嘻\",\"哈哈\",\"咕咕\"]);";engine.eval(importJava);List list = (List) engine.get("list");System.err.println(list);//执行js文件URL url = ScriptTest.class.getClassLoader().getResource("test.js");FileReader reader = new FileReader(url.getPath());engine.eval(reader);reader.close();}
test.js(src下)
var a = 10;
var b = 30;
function mul() {return a*b;
}println(mul());
转载于:https://www.cnblogs.com/mf001/p/8507757.html
java 脚本引擎执行javascript脚本相关推荐
- 【Java脚本引擎】脚本引擎执行JavaScript代码
应用场景 公司有30员工,每个人工资计算方式不同.现在需要计算工资. 传统的方法:一个接口,30个实现类. 使用脚本引擎:编写一个xml文件,每人一个计算公式,使用的时候可以把公式加载到程序中,启动时 ...
- Java动态性(3) - 脚本引擎执行javascript代码
1.脚本引擎执行JavaScript代码 脚本引擎介绍 使得Java应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在Java平台上调用各种脚本语言的目的 Java脚本API是连通Java平 ...
- windows系统下vc调用v8脚本引擎执行javascript初探
一.众所周知,v8引擎在谷歌浏览器中大放异彩,这得益于v8引擎对于js脚本的无与伦比的执行效率.谷歌浏览器作为v8引擎的宿主,它也只不过是一个普通的桌面程序.当然我们也可以结合实际应用场景编写应用程序 ...
- Java脚本引擎执行js代码以及动态编译
Java脚本引擎执行js代码 一.概述 JAVA脚本引擎是从JDK6.0之后添加的新功能. 使得 Java 应用程序可以通过一套固定的接口与各种脚本引擎交互,从 而达到在 Java 平台上调用各种脚本 ...
- web自动化测试-执行 JavaScript 脚本
JavaScript 是一种脚本语言,有的场景需要使用 js 脚本注入辅助我们完成 Selenium 无法做到的事情. 当 webdriver 遇到无法完成的操作时,可以使用 JavaScript 来 ...
- 服务器端执行javascript脚本
想实现这样的功能: 单击一个服务器端按钮(登陆)后,如果登陆成功隐藏页面上的一个HTML按钮. 于是想通过在服务器端执行javascript脚本实现: private void Btn_login_C ...
- Swift 使用WebKit动态执行javascript脚本
Swift 使用WebKit动态执行javascript脚本 由于苹果取消UIWebView的控件使用.在IOS12 改用WebKit,需要导入头文件.swift里面需要引入相关依赖.苹果推荐我们使用 ...
- Java程序定时执行shell脚本
第一次写博客,写的不好还请见谅. 之前在Linux环境中想定期执行某个脚本,第一反应就是将这个task加入到crontab里(crontab的知识点这里就不具体介绍了),当然,这种做法一般情况下是可行 ...
- vba 执行网页javascript_《SeleniumBasic 3.141.0.0 - 在VBA中操作浏览器》系列文章之十九:执行JavaScript脚本...
SeleniumBasic中的IWebDriver对象的ExecuteScript方法用于执行JavaScript脚本.语法如下 Function ExecuteScript(script As St ...
最新文章
- Debian 10发布:基于Linux 4.19内核,包含5.9万软件包
- 更改mssql数据库的名字
- iphonex适配游戏_Cocos Creator 适配怎么做?
- mysql数据库密码为空_注意MySQL数据库用户root密码为空
- 为系统加载右键注册控件选项【VB 注册控件】
- 解决Vue循环中子组件不实时更新的问题
- 编程基本功:工作环境、运行环境,跟代码一样重要,都要备份
- rest_framework 权限功能
- Python:minicap实现快速截图
- python关于numpy常用函数思维导图
- 关于IE样式兼容问题
- 如何生成网站地图(Sitemap)
- 【WIFI专题】Wifi 2.4G及5G频段各信道的中心频率及主要国家的分布情况
- 2022年最新浙江机动车签字授权人模拟试题及答案
- leaflet蜂巢图(leaflet篇.15)
- c语言中调用函数fn,C语言常见的函数调用
- 数字图像处理(4): 遥感影像中 光谱分辨率、空间分辨率、时间分辨率、全色图像、多光谱图像、高光谱图像 的区别
- MFC CFile 读写文件
- 计算机文秘都学些什么,文秘专业主要学什么?
- 上海中考分数线爬虫及使用plotly数据可视化
热门文章
- Android PC投屏简单尝试—最终章1
- Android application 中使用 provided aar 并没有那么简单
- 反卷积在神经网络可视化上的成功应用
- Android Binder基本概念流程学习
- 关于android设备管理器的一些分析
- JZOJ 5183. 【NOIP2017提高组模拟6.29】小T的钢琴
- android技巧:apk文件反编译以及签名打包,APKTool 反编译,打包,签名
- pythonsys用法_Python中 sys.argv[]的用法简明解释
- html代码在线运行环境,ES5/可执行代码与执行环境
- hdu2222(看一些单词哪些在模式串中出现过)