程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JDK 1.6的jrunscript.exe用途

JDK 1.6的jrunscript.exe用途

編輯:關於JAVA
今天大家討論說發現 JDK 1.6 安裝目錄下有個 jrunscript.exe, 不知道是干啥的, 在 DOS 下運行一下看看:

D:\jee5training\jdk1.6.0\bin>jrunscript.exe
js> var a = 2;
js> print(a)
2js> println(a)
2
js>
js> alert(a)
script error: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "al
ert" is not defined. (<STDIN>#1) in <STDIN> at line number 1
js> new JFrame("a").show();
script error: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "JF
rame" is not defined. (<STDIN>#1) in <STDIN> at line number 1
js> new javax.swing.JFrame("a").show();

原來是 js 解釋器, 注意不在浏覽器中運行, 所以 alert 這樣的方法是不能用的。 但是可以調用 Java 類, 例如 GUI 庫。

這樣的 DOS 命令解釋器應用我們也可以用 Java 來做, 例如下面的代碼就實現了一個提示 Commmand: 的命令行應用:

import java.io.*;
public class CustomCMD
{
    public static void main(String[] args) throws IOException
    {
      BufferedReader cmdIn = new BufferedReader(new InputStreamReader(System.in));
      System.out.println("Enter \"quit\" to quit this program.");
      for(;;) {
        System.out.print("Command:");
        String cmd = cmdIn.readLine();
        if(cmd.equalsIgnoreCase("Quit")) break;// Quit the program
        System.out.println("Your input: " + cmd.toUpperCase());
        // Process the command
      }
    }
}

其他的一些命令行小代碼:

命令行形式下在同一行上反復輸出文本使用 System.out.print("…… \r");// \r表示回車, \n表示換行

分析帶選項的命令行輸入

如: -S <server> -P <port> -M <message>
public static void main(String args[]) {
// Parse the command line options
for(int i = 0; i < args.length - 1; i++) {
if(args[i].equalsIgnoreCase("-S")) {
String server = args[i + 1];
}else if(args[i].equalsIgnoreCase("-P")) {
String port = args[i + 1];
}
...// Other parameters
}

相關資料: Java 6 的默認 JS 腳本引擎是 Rhino, 是 Mozilla 開源的 JS 引擎, 基於 Java, 我們可以下載其單獨的包用在 JDK 1.4 或者 1.5. 這樣應用可以將一些業務邏輯代碼用js實現.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved