您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

如何在java程序中运行js的代码分享

2024/4/17 19:54:23发布5次查看
本篇文章给大家分享的内容是如何在java程序中运行js的代码分享,有着一定的参考价值,有需要的朋友可以参考一下
1.6版本中增加了scriptengine可以直接运行js代码
1、直接写js代码
import javax.script.scriptengine; import javax.script.scriptenginemanager; import javax.script.scriptexception; /** * 直接调用js代码 */ public class scriptenginetest { public static void main(string[] args) { scriptenginemanager manager = new scriptenginemanager(); scriptengine engine = manager.getenginebyname("javascript"); try{ engine.eval("var a=3; var b=4;print (a+b);"); // engine.eval("alert(\"js alert\");"); // 不能调用浏览器中定义的js函数 // 错误,会抛出alert引用不存在的异常 }catch(scriptexception e){ e.printstacktrace(); } } }
2、调用function
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(); } }
js文件
// expression.js function merge(a, b) { c = a * b; return c; }
相关推荐:
java直接运行javascript代码或js文件
在java中直接调用js代码
java调用javascript文件方法
java在服务器后端直接运行javascript方法
以上就是如何在java程序中运行js的代码分享的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录