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脚本相关推荐

  1. 【Java脚本引擎】脚本引擎执行JavaScript代码

    应用场景 公司有30员工,每个人工资计算方式不同.现在需要计算工资. 传统的方法:一个接口,30个实现类. 使用脚本引擎:编写一个xml文件,每人一个计算公式,使用的时候可以把公式加载到程序中,启动时 ...

  2. Java动态性(3) - 脚本引擎执行javascript代码

    1.脚本引擎执行JavaScript代码 脚本引擎介绍 使得Java应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在Java平台上调用各种脚本语言的目的 Java脚本API是连通Java平 ...

  3. windows系统下vc调用v8脚本引擎执行javascript初探

    一.众所周知,v8引擎在谷歌浏览器中大放异彩,这得益于v8引擎对于js脚本的无与伦比的执行效率.谷歌浏览器作为v8引擎的宿主,它也只不过是一个普通的桌面程序.当然我们也可以结合实际应用场景编写应用程序 ...

  4. Java脚本引擎执行js代码以及动态编译

    Java脚本引擎执行js代码 一.概述 JAVA脚本引擎是从JDK6.0之后添加的新功能. 使得 Java 应用程序可以通过一套固定的接口与各种脚本引擎交互,从 而达到在 Java 平台上调用各种脚本 ...

  5. web自动化测试-执行 JavaScript 脚本

    JavaScript 是一种脚本语言,有的场景需要使用 js 脚本注入辅助我们完成 Selenium 无法做到的事情. 当 webdriver 遇到无法完成的操作时,可以使用 JavaScript 来 ...

  6. 服务器端执行javascript脚本

    想实现这样的功能: 单击一个服务器端按钮(登陆)后,如果登陆成功隐藏页面上的一个HTML按钮. 于是想通过在服务器端执行javascript脚本实现: private void Btn_login_C ...

  7. Swift 使用WebKit动态执行javascript脚本

    Swift 使用WebKit动态执行javascript脚本 由于苹果取消UIWebView的控件使用.在IOS12 改用WebKit,需要导入头文件.swift里面需要引入相关依赖.苹果推荐我们使用 ...

  8. Java程序定时执行shell脚本

    第一次写博客,写的不好还请见谅. 之前在Linux环境中想定期执行某个脚本,第一反应就是将这个task加入到crontab里(crontab的知识点这里就不具体介绍了),当然,这种做法一般情况下是可行 ...

  9. vba 执行网页javascript_《SeleniumBasic 3.141.0.0 - 在VBA中操作浏览器》系列文章之十九:执行JavaScript脚本...

    SeleniumBasic中的IWebDriver对象的ExecuteScript方法用于执行JavaScript脚本.语法如下 Function ExecuteScript(script As St ...

最新文章

  1. Debian 10发布:基于Linux 4.19内核,包含5.9万软件包
  2. 更改mssql数据库的名字
  3. iphonex适配游戏_Cocos Creator 适配怎么做?
  4. mysql数据库密码为空_注意MySQL数据库用户root密码为空
  5. 为系统加载右键注册控件选项【VB 注册控件】
  6. 解决Vue循环中子组件不实时更新的问题
  7. 编程基本功:工作环境、运行环境,跟代码一样重要,都要备份
  8. rest_framework 权限功能
  9. Python:minicap实现快速截图
  10. python关于numpy常用函数思维导图
  11. 关于IE样式兼容问题
  12. 如何生成网站地图(Sitemap)
  13. 【WIFI专题】Wifi 2.4G及5G频段各信道的中心频率及主要国家的分布情况
  14. 2022年最新浙江机动车签字授权人模拟试题及答案
  15. leaflet蜂巢图(leaflet篇.15)
  16. c语言中调用函数fn,C语言常见的函数调用
  17. 数字图像处理(4): 遥感影像中 光谱分辨率、空间分辨率、时间分辨率、全色图像、多光谱图像、高光谱图像 的区别
  18. MFC CFile 读写文件
  19. 计算机文秘都学些什么,文秘专业主要学什么?
  20. 上海中考分数线爬虫及使用plotly数据可视化

热门文章

  1. Android PC投屏简单尝试—最终章1
  2. Android application 中使用 provided aar 并没有那么简单
  3. 反卷积在神经网络可视化上的成功应用
  4. Android Binder基本概念流程学习
  5. 关于android设备管理器的一些分析
  6. JZOJ 5183. 【NOIP2017提高组模拟6.29】小T的钢琴
  7. android技巧:apk文件反编译以及签名打包,APKTool 反编译,打包,签名
  8. pythonsys用法_Python中 sys.argv[]的用法简明解释
  9. html代码在线运行环境,ES5/可执行代码与执行环境
  10. hdu2222(看一些单词哪些在模式串中出现过)