zoukankan      html  css  js  c++  java
  • java中使用js函数

    JDK6已经发布很久了,很早就听过他已经支持脚本语言了,不过一直没有时间尝试,今天偷闲试了一下,感觉不错。
      javax.script包它是Java新增的操作脚本的工具包,
      利用它我们可以对脚本语言进行操作(本例仅是针对javascript

      1.用引擎直接解析脚本公式
      Java代码
      //创建脚本引擎管理器
      ScriptEngineManager sem = new ScriptEngineManager();
      //创建一个处理JavaScript的脚本引擎
      ScriptEngine engine = sem.getEngineByExtension("js");
      try{
      //执行js公式
      engine.eval("if(6>5){flag=true;}else{flag =false;}");
      }catch(ScriptException ex){
      ex.printStackTrace();
      }
      //看看我们预期的反馈结果 true
      System.out.println((engine.get("flag")));
      2.创建方法并进行脚本调用(这个是我比较喜欢的一种方式)
      Java代码
      ScriptEngineManager sem = new ScriptEngineManager();
      ScriptEngine engine = sem.getEngineByName("JavaScript");
      //创建脚本
      String script = "function max(first,second) "
      + "{ return (first > second) ?true:false;}";
      //执行脚本
      engine.eval(script);
      Invocable inv = (Invocable) engine;
      //执行方法并传递参数
      Object obj = inv.invokeFunction("max", "0", "1");
      //打印结果
      System.out.println((Boolean)obj==false);
      这里据说Invoable很有用,好多高级功能可以用到。

  • 相关阅读:
    用icas下载文件报错
    jboss7.1.1相关error及解决办法
    Base-64编码介绍
    上传文件路径问题
    ZooKeeper安装(Windows)
    DBCP连接池配置参数说明
    Linux普通用户使用sudo权限启停apache服务
    线程池中的队列
    java线程池原理及实现方式
    https基础流程
  • 原文地址:https://www.cnblogs.com/booke/p/3199600.html
Copyright © 2011-2022 走看看