Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Java 8 - JavaScript Nashorn

Dengan Java 8, Nashorn, mesin javascript yang jauh lebih baik diperkenalkan, untuk menggantikan Rhino yang ada. Nashorn memberikan kinerja 2 hingga 10 kali lebih baik, karena secara langsung mengkompilasi kode dalam memori dan meneruskan bytecode ke JVM. Nashorn menggunakan fitur panggilan dinamis, yang diperkenalkan di Java 7 untuk meningkatkan kinerja.

jjs

Untuk mesin Nashorn, JAVA 8 memperkenalkan alat baris perintah baru, jjs, untuk mengeksekusi kode javascript di konsol.

Menafsirkan File js

Buat dan simpan file sample.js di c:\> folder JAVA.

contoh.js

print('Hello World!');

Buka konsol dan gunakan perintah berikut.

C:\JAVA>jjs sample.js

Ini akan menghasilkan output berikut:

Hello World!

jjs dalam Mode Interaktif

Buka konsol dan gunakan perintah berikut.

C:\JAVA>jjs
jjs> print("Hello, World!")
Hello, World!
jjs> quit()
>>

Luluskan Argumen

Buka konsol dan gunakan perintah berikut.

C:\JAVA> jjs -- a b c
jjs> print('letters: ' +arguments.join(", "))
letters: a, b, c
jjs>

Memanggil JavaScript dari Java

Menggunakan ScriptEngineManager, kode JavaScript dapat dipanggil dan diinterpretasikan dalam Java.

Contoh

Buat program Java berikut menggunakan editor pilihan Anda, misalnya, C:\> JAVA.

Java8Tester.java

Demo Langsung
import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.ScriptException;

public class Java8Tester {

   public static void main(String args[]) {
      ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
      ScriptEngine nashorn = scriptEngineManager.getEngineByName("nashorn");
		
      String name = "Mahesh";
      Integer result = null;
      
      try {
         nashorn.eval("print('" + name + "')");
         result = (Integer) nashorn.eval("10 + 2");
         
      } catch(ScriptException e) {
         System.out.println("Error executing script: "+ e.getMessage());
      }
      System.out.println(result.toString());
   }
}

Verifikasi Hasil

Kompilasi kelas menggunakan javac kompiler sebagai berikut

C:\JAVA>javac Java8Tester.java

Sekarang jalankan Java8Tester sebagai berikut

C:\JAVA>java Java8Tester

Seharusnya menghasilkan hasil berikut

Mahesh
12

Memanggil Java dari JavaScript

Contoh berikut menjelaskan cara mengimpor dan menggunakan kelas Java dalam skrip java.

Buat dan simpan sample.js di c:\> folder JAVA.

contoh.js

var BigDecimal = Java.type('java.math.BigDecimal');

function calculate(amount, percentage) {

   var result = new BigDecimal(amount).multiply(new BigDecimal(percentage)).divide(
      new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_EVEN);
   
   return result.toPlainString();
}
var result = calculate(568000000000000000023,13.9);
print(result);

Buka konsol dan gunakan perintah berikut.

C:\JAVA>jjs sample.js

Ini harus menghasilkan output berikut

78952000000000000003.20

java

  1. Operator Jawa
  2. Komentar Jawa
  3. Java untuk setiap Loop
  4. String Jawa
  5. Antarmuka Jawa
  6. Kelas Anonim Java
  7. Java mencoba-dengan-sumber daya
  8. Anotasi Jawa
  9. Pernyataan Jawa
  10. Vektor Jawa