您的位置:

java调用js脚本语言(java调用js代码 实例)

java调用js脚本语言(java调用js代码 实例)

更新:

本文目录一览:

java程序中运行js脚本

我们要在Java中执行JavaScriptMethods.js中的execute(s1,s2)方法,JavaScriptMethods.js文件内容如下:

function execute(s1, s2){

return s1 + s2;

}

首先需要定义一个接口,这个接口中给出与要执行的JavaScript方法一样的方法签名,我们定义接口Methods,它的内容如下:

/**

* 接口中的方法签名必须与要执行的JavaScript方法一致

* @author yuncong

*

*/

public interface Methods {

public String execute(String s1,String s2);

}

然后,就可以用脚本引擎执行JavaScriptMethods.js中execute(s1,s2)方法了,具体内容写在下面的ExecuteScript类中的:

import java.io.FileReader;

import javax.script.Invocable;

import javax.script.ScriptEngine;

import javax.script.ScriptEngineManager;

public class ExecuteScript {

public static void main(String[] args) {

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("js");

try {

String path = ExecuteScript.class.getResource("").getPath();

System.out.println(path);

// FileReader的参数为所要执行的js文件的路径

engine.eval(new FileReader(path + "JavaScriptMethods.js"));

if (engine instanceof Invocable) {

Invocable invocable = (Invocable) engine;

Methods executeMethod = invocable.getInterface(Methods.class);

System.out.println(executeMethod.execute("li", "yuncong"));

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

运行ExecuteScript类,输出如下:

?

1

2

/C:/Users/yuncong/git/login/target/classes/executescript/

liyuncong

如何在java中调用js方法

在Java中调用js文件中的function,传入调用参数,并获取返回值

js文件中的merge函数将两个参数a,b相加,并返回c。

// expression.js

function merge(a, b) {

c = a * b;

return c;

}

在Java代码中读取js文件,并参数两个参数,然后回去返回值。

package com.sinaapp.manjushri;

import java.io.FileReader;

import javax.script.Invocable;

import javax.script.ScriptEngine;

import javax.script.ScriptEngineManager;

/** * Java调用并执行js文件,传递参数,并活动返回值 * * @author manjushri */

public class ScriptEngineTest {

public static void main(String[] args) throws Exception {

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("javascript");

String jsFileName = "expression.js"; // 读取js文件

FileReader reader = new FileReader(jsFileName); // 执行指定脚本

engine.eval(reader);

if(engine instanceof Invocable) {

Invocable invoke = (Invocable)engine; // 调用merge方法,并传入两个参数

// c = merge(2, 3);

Double c = (Double)invoke.invokeFunction("merge", 2, 3);

System.out.println("c = " + c);

}

reader.close();

}

}

输出结果:

c = 5.0

java怎么调用javascript

可参考:

package javaIjs;

/**

* @param args

*/

import java.io.FileReader;

import javax.script.Invocable;

import javax.script.ScriptEngine;

import javax.script.ScriptEngineManager;

/**

* Java调用并执行js文件,传递参数,并活动返回值

*

* @author manjushri

*/

public class ScriptEngineTest {

public static void main(String[] args) throws Exception {

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("javascript");

String jsFileName = System.getProperty("user.dir")+"/src/javaIjs/expression.js";

// 读取js文件

FileReader reader = new FileReader(jsFileName);

// 执行指定脚本

System.out.println(engine.getContext().getReader());

engine.eval(reader);

if (engine instanceof Invocable) {

Invocable invoke = (Invocable) engine;

// 调用merge方法,并传入两个参数

// c = merge(2, 3);

Double c = (Double) invoke.invokeFunction("merge1", 21, 3);

System.out.println("c = " + c);

}

reader.close();

}

}

java调用js代码,java调用js代码 实例

本文目录一览: 1、如何在java中调用js方法 2、如何通过java代码调用js 3、java中怎么调用js代码 4、如何在java调用js 5、请问怎么写java调用node环境运行js代码? 如

2023-12-08
java调用js脚本语言(java调用js代码 实例)

本文目录一览: 1、java程序中运行js脚本 2、如何在java中调用js方法 3、java怎么调用javascript java程序中运行js脚本 我们要在Java中执行JavaScriptMet

2023-12-08
java调用js,java调用js脚本

2022-11-28
js中调用java的方法,java调用js代码 实例

本文目录一览: 1、怎么实现javascript中调用java类中的方法 2、如何在JAVASCRIPT调用Android JAVA函数 3、js怎么调用JAVA方法 怎么实现javascript中调

2023-12-08
java调用js,java调用js方法

2023-01-07
java调用js,java调用json接口

2023-01-09
js调用linux脚本,js调用linux命令

2022-11-24
js与java调用,java 调用 js

2022-11-24
java里面引用js脚本(用js写脚本)

本文目录一览: 1、java中怎么调用js代码 2、如何把java代码嵌入到javascript中 3、java程序中运行js脚本 4、java怎么调用javascript 5、如何在java中调用j

2023-12-08
java中调用js脚本(java中调用js脚本获取结果)

本文目录一览: 1、如何在java中调用js方法 2、java怎么调用javascript 3、java程序中运行js脚本 如何在java中调用js方法 在Java中调用js文件中的function,

2023-12-08
js控制java脚本,js 脚本语言

2022-11-25
java里可以调用js里的参数吗,js调用java方法

本文目录一览: 1、java 调用 js函数 2、java怎么调用javascript 3、如何在java中调用js方法 4、java如何调用js里的变量 java 调用 js函数 function是

2023-12-08
js调用java,js调用java类中的方法

2022-11-30
java程序js脚本(Java脚本)

本文目录一览: 1、java程序中运行js脚本 2、怎么把JS嵌入到Java程序中 3、java脚本里怎么写javascript 4、JS脚本怎么运行? 5、如何在js脚本中写java代码 6、如何把

2023-12-08
js调用android原生代码,js调用Android

本文目录一览: 1、Android AgentWeb Android和Js交互 2、JS怎样调用Android本地原生方法 3、原生APP中js怎样与Android和ios进行交互 4、JS 调用an

2023-12-08
js代码段事例(js脚本实例)

本文目录一览: 1、一段js代码求解 2、js的一段代码解读 3、求一段JS代码 4、Js编程语言中,自调用函数是什么?举个Js代码例子解释一下! 5、求一段JS代码!鼠标离开文本框后提交数据! 一段

2023-12-08
js脚本编程之实战一(js脚本代码大全)

本文目录一览: 1、怎么学好js? 2、JS编程是什么意思? 3、用javascript脚本语言编写一个 计算器计算加减乘除 ? 谢谢,很急!大家帮帮忙呀!!! 4、如何编写一个自动登录的js脚本 怎

2023-12-08
测试js对c函数的调用,c语言调用js

本文目录一览: 1、js如何调用c语言写的api 2、JS函数如何调用别的函数变量。 3、如何在js函数中调用另外一个函数 4、js 函数如何去调用另一个函数中的函数? js如何调用c语言写的api

2023-12-08
java程序执行js脚本(java执行脚本语言)

本文目录一览: 1、如何用java执行指定页面中的js代码 2、如何在java中调用js方法 3、如何通过java代码调用js 4、java程序中运行js脚本 如何用java执行指定页面中的js代码

2023-12-08
js代码中script,js代码中的问号是什么意思

本文目录一览: 1、javascript中script的SRC属性 2、JS代码里加载script代码,并隐藏其内容怎么弄呢? 3、使用javascript必须使script标签吗 javascrip

2023-12-08