CommandCall 類別可讓 Java™ 程式呼叫非互動式的 IBM® i 指令。
指令結果會呈現為 AS400Message 物件清單。
CommandCall 的輸入如下:
指令字串可以在建構子上,透過 CommandCall setCommand() 方法設定, 或在 run() 方法上設定。執行指令之後,Java 程式即可使用 getMessageList() 方法,來擷取從指令產生的任何 IBM i 訊息。
使用 CommandCall 類別會導致 AS400 物件連接至系統。 如需管理連線的相關資訊,請參閱管理連線。
當 Java 程式和 IBM i 指令都位於相同的伺服器上時, IBM Toolbox for Java 的預設行為是查看系統上的指令執行緒是否安全。 如果安全緒是安全的,則會在緒中執行指令。您可以使用 setThreadSafe() 方法, 明確指定指令的執行緒安全性,來抑制於執行時間進行查閱。
範例:執行指令
下列範例顯示如何使用 CommandCall 類別在系統上執行指令:
// Create an AS400 object.
AS400 sys = new AS400("mySystem.myCompany.com");
// Create a command call object. This
// program sets the command to run later.
// It could set it here on the constructor.
CommandCall cmd = new CommandCall(sys);
// Run the CRTLIB command
cmd.run("CRTLIB MYLIB");
// Get the message list which
// contains the result of the command.
AS400Message[] messageList = cmd.getMessageList();
// ... process the message list.
// Disconnect since I am done sending
// commands to the server
sys.disconnectService(AS400.COMMAND);
範例:執行使用者指定的指令
範例:使用 CommandCall 說明 如何執行使用者指定的指令。