zoukankan      html  css  js  c++  java
  • Java-Scripting

    1. 简单调用

     1 /**
     2  * simple,默认java.*包中的API已经倒入到engine中。你可以使用那些API
     3  * @throws Exception
     4  */
     5 private static void invoke1() throws Exception{
     6     ScriptEngineManager engineManager = new ScriptEngineManager();
     7     ScriptEngine engine = engineManager.getEngineByName("javascript");
     8     //根据“脚本语言名称”获取执行引擎,java本身默认只支持javascript,对于其他脚本,可以
     9     //使用第三方包(apache bsf,不过不是很好用)
    10     //getEngineByName方法每次都会创建一个心的Engine对象
    11     //java.lang包默认已经导入
    12     String script = "var message = 'This is javascript.';println(message);var total = 2;";
    13     engine.eval(script);
    14     Double total = (Double)engine.get("total");
    15     System.out.println(total);
    16 }

    2. 向JS脚本传递参数

     1 /**
     2  * 向当前engine调用中put参数,并交给script
     3  * @throws Exception
     4  */
     5 private static void invoke2() throws Exception{
     6     ScriptEngineManager engineManager = new ScriptEngineManager();
     7     ScriptEngine engine = engineManager.getEngineByName("javascript");
     8     String script = "for(var i=0;i< times;i++) {println(i);}";
     9     engine.put("times", 10);
    10     engine.eval(script);
    11 }
    View Code

     3. 在JS中使用java对象的方法或属性

    1 private static void invoke3() throws Exception{
    2     ScriptEngineManager engineManager = new ScriptEngineManager();
    3     ScriptEngine engine = engineManager.getEngineByName("javascript");
    4     String script = "println(string + ',length:' + string.length);";
    5     engine.put("string", "javascript");
    6     engine.eval(script);
    7 }
  • 相关阅读:
    python 批处理excel文件实现数据的提取
    python 实现excel数据的提取和整理
    正则表达式
    The zen of python
    恶作剧程序之炸弹窗口
    C 坦克射击小游戏
    C 查找数的位置
    niit源码--Developing java applications using servlet and jsp1
    框架
    设置多页面登陆,注册,递交
  • 原文地址:https://www.cnblogs.com/zjc-cnblogs/p/aaaaa.html
Copyright © 2011-2022 走看看