Heim > Web-Frontend > js-Tutorial > So führen Sie die JS-Codefreigabe in einem Java-Programm aus

So führen Sie die JS-Codefreigabe in einem Java-Programm aus

零到壹度
Freigeben: 2018-04-14 15:10:31
Original
1767 Leute haben es durchsucht

Der Inhalt dieses Artikels besteht darin, den Code zum Ausführen von js in einem Java-Programm zu teilen. Er hat einen bestimmten Referenzwert.

Version 1.6 ScriptEngine hat wurde hinzugefügt, um js-Code direkt auszuführen

1. Schreiben Sie js-Code direkt

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();
 }
 }   
}
Nach dem Login kopieren


2

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();  

  }
}
Nach dem Login kopieren


js-Datei

// expression.js 
function merge(a, b) { 
 c = a * b; 
 return c; 
}
Nach dem Login kopieren


Verwandte Empfehlungen:

Java führt direkt JavaScript-Code oder JS-Dateien aus

Rufen Sie js-Code direkt in Java auf

Java ruft die Javascript-Dateimethode auf

JAVA führt JavaScript aus Methoden direkt auf dem Server-Backend

Das obige ist der detaillierte Inhalt vonSo führen Sie die JS-Codefreigabe in einem Java-Programm aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage