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

本篇文章给大家分享的内容是如何在java程序中运行js的代码分享,有着一定的参考价值,有需要的朋友可以参考一下

1.6版本中增加了scriptengine可以直接运行js代码

1、直接写js代码

  1. 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

  1. 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文件

  1. // expression.js function merge(a, b) {  c = a * b;  return c; }

登录后复制

相关推荐:

立即学习“Java免费学习笔记(深入)”;

Java直接运行JavaScript代码或js文件

在Java中直接调用js代码

java调用javascript文件方法

JAVA在服务器后端直接运行JavaScript方法

以上就是如何在java程序中运行js的代码分享的详细内容,更多请关注【创想鸟】其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
编程技术

Vue2.0设置全局样式步奏详解

2025-3-8 13:12:30

编程技术

js的作用域使用详解

2025-3-8 13:12:44

0 条回复 A文章作者 M管理员
欢迎您,新朋友,感谢参与互动!
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
私信列表
搜索