ITKeyword,专注技术干货聚合推荐

注册 | 登录

Java执行js脚本

pyzheng 分享于 2015-11-14

推荐:selenium webdriver学习(三)------------执行js脚本

在用selenium 1.X的时候常常会用到getEval()方法来执行一段js脚本来对页面进行处理,以处理一些遇到的问题。当然selenium webdriver也提供这样的一个方法:execut

http://my.oschina.net/sniperLi/blog/530338package 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

推荐:Java 执行 SQL 脚本文件

假定Java 程序中要定期执行 SQL 语句,因需求变更应修改原有 SQL 语句或者加上更多的语句时,不得不修改源代码,然后再次编译。要是把 SQL 语句写在单独的 SQL

.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);

}

}

推荐:java 执行linux命令或shell脚本方法

一.容易出错的地方之一,执行ps等命令要注意到jvm调用的linux命令也是一个进程 背景:第1,2,3,4行代码都可以完成java 执行shell脚本的任务,第2,3,4行代码

http://my.oschina.net/sniperLi/blog/530338package cn.sniper.spider.utils; import java.io.BufferedReader;import java.io.FileInputStream;import java.io.InputStream;import

相关阅读排行


用户评论

游客

相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。