`

Java执行js脚本

 
阅读更多
http://my.oschina.net/sniperLi/blog/530338

package cn.sniper.spider.utils;
 
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.StringReader;
import java.net.URL;
 
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
 
import org.junit.Test;
 
public class Java4JsUtil {
     
    @Test
    public void testJs1() throws Exception {
        ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
        ScriptEngine engine = scriptEngineManager.getEngineByExtension("js");
         
        StringReader reader = new StringReader("function getNum(num){return num}");
         
        engine.eval(reader);
         
        Invocable invocable = (Invocable)engine;
        Object result = invocable.invokeFunction("getNum", "2");
        System.out.println(result);
    }
     
    @Test
    public void testJs2() throws Exception {
        ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
        ScriptEngine engine = scriptEngineManager.getEngineByExtension("js");
        BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("D:\\test.js")));
         
        engine.eval(reader);
         
        Invocable invocable = (Invocable)engine;
        Object result = invocable.invokeFunction("getNum", "2");
        System.out.println(result);
    }
     
    @Test
    public void testOnlineJs() throws Exception {
        ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
        ScriptEngine engine = scriptEngineManager.getEngineByExtension("js");
        URL url2 = new URL("http://10.161.56.231:8888/tjfxpt/resources/js/common/common.js");
        InputStream inputStream = url2.openStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
        System.out.println(reader.readLine());
        engine.eval(reader);
         
        Invocable invocable = (Invocable)engine;
        Object result = invocable.invokeFunction("fmoney", new Integer[]{10, 2});
        System.out.println(result);
         
    }
     
}
分享到:
评论

相关推荐

    android使用webView实现java程序与js脚本的相互调用

    android使用webView实现java程序与js脚本的相互调用,

    java运行js脚本引擎-----rhino

    NULL 博文链接:https://andilyliao.iteye.com/blog/722249

    Java直接运行JS代码

    Java直接运行JS代码样例 java中调用js脚本 java中直接调用js代码

    Java执行JS脚本工具

    今天小编就为大家分享一篇关于Java执行JS脚本工具,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    脚本化Java

    本章首先介绍如何把JavaScript解释器嵌入到一个Java6应用程序中,以及如何从该应用程序运行JavaScript脚本。然后,回过头来展示这些脚本如何直接脚本化Java对象。我们还将在第23章再次回到Java脚本化的话题,第23章...

    网页js脚本注入,可执行任意代码。

    网页js脚本注入,可执行任意代码。这里有个实例教程,通过注入实现跳过验证码。

    java js引擎调试js代码

    java js引擎调试js代码,java js引擎调试js代码,java js引擎调试js代码,java js引擎调试js代码

    java script 调试工具 脚本控制台

    2,通过控制台查看目的网页的DOM文档树,执行JavaScript脚本, 界面介绍: 1, 命令历史窗口:保存命令的历史 2, 命令窗口 直接输入javascript语句,如:document.title; 将返回被调试页面的页面标题; ...

    springboot整合dwr实现js调用java方法

    springboot整合dwr实现js调用java方法,页面支持freemarker和jsp

    第4章__客户端脚本语言_java客户端脚本语言_

    java客户端脚本语言。JavaScript是一种嵌入HTML的脚本语言,它不需要编译,在客户端可以通过浏览器解释执行。JavaScript具有跨平台、基于对象和事件驱动的特点,同时它也具有一定的安全性。

    java对javascript的支持

    比较详细的介绍了jdk1.6对脚本语言的支持(以javascript为例)

    Java脚本引擎1

    (1)java中获取脚本引擎的方法:获取js引擎:(2)脚本执行时的数据绑定对象:可以自定义一个binding对象:(有两个例子,可以对比一下)脚本执行引擎上下

    一步步教你学会javascript脚本语言

    因它的开发环境简单,不需要Java编译器,而是直接运行在Web浏览器中,而因倍受Web设计者的所爱。为了帮助我国广大计算机用户尽快了解和掌握这些新技术,本着先进的技术,要大家分享的原则,电脑网络学校特组织...

    Selenium执行Javascript脚本参数及返回值过程详解

    主要介绍了Selenium执行Javascript脚本参数及返回值过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Java 8 Nashorn 脚本引擎

    NULL 博文链接:https://1598623317.iteye.com/blog/2087516

    不想让浏览器运行javascript脚本的方法

    如果希望自己的浏览器禁止运行网页上的 JavaScript 脚本的话,可以按照下面的方法将自己的浏览器设置一下: 【1】:打开 IE 浏览器,然后选择 【工具】–> 【Internet 选项】–>【安全】–>【自定义级别】然后在打开的...

    js脚本中执行java后台代码方法解析

    其实js里执行sql语句有多种方式。 方式一:直接在js代码里调用sql语句,原则上不能使用,因为这将sql直接暴露在客户端,安全性极差。 方式二:在js里运用ajax技术,调用后台方法执行sql语句。 方式三:运用dwr框架,...

    java_run_js.rar_run_run java script

    Java执行和调用JavaScript脚本文件的示例,使用Java调用JavaScript文件并输入结果。

    JAVA上百实例源码以及开源项目

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

Global site tag (gtag.js) - Google Analytics