Dalam
membuat program infoserver ini kita harus mengketikan kode program seperti
dibawah ini :
import
java.io.*;
import
java.net.*;
import
java.util.*;
public
class InfoServer {
private
final int INFO_PORT=50000;
private
String datafromClient;
public
InfoServer(){
BufferedReader
inFromClient;
DataOutputStream
outToClient;
Socket
serverSocket;
try{
ServerSocket
infoServer =
new
ServerSocket(INFO_PORT);
System.out.println("Server
telah siap");
while(true){
serverSocket
= infoServer.accept();
System.out.println("Ada
client"+"yang terkoneksi!");
inFromClient
= new BufferedReader(new InputStreamReader(serverSocket.getInputStream()));
outToClient
= new DataOutputStream(serverSocket.getOutputStream());
outToClient.writeBytes("InfoServer
versi 0.1\n"+"hanya untuk testing..\n"+"Silahkan berikan
perintah TIME | NET | QUIT\n");
boolean
isQUIT = false;
while
(!isQUIT) {
datafromClient
= inFromClient.readLine();
if (datafromClient.startsWith("TIME"))
{
outToClient.writeBytes(new
Date().toString()
+ "\n");
} else if
(datafromClient.startsWith("NET")) {
outToClient.writeBytes(
InetAddress.getByName("localhost").toString()
+"\n");
} else if
(datafromClient.startsWith("QUIT"))
{
isQUIT =
true;
}
}
outToClient.close();
inFromClient.close();
serverSocket.close();
System.out.println("Koneksi
client tertutup..");
}
}
catch
(IOException ioe) {
System.out.print("error:
" + ioe);
}
catch
(Exception e) {
System.out.print("error:
" + e);
}
}
public
static void main(String[] args) {
new
InfoServer();
}
}
Setelah
selesai simpan source code diatas dengan nama file InfoServer.java selanjutnya
kita akan mengcompile program tersebut dengan aplikasi textpad, dengan cara
control 1 untuk mengcompile ny, jika tampil pemberitahuan tool completed
succesfully seperti gambar dibawah ini :
maka program tersebut tidak ada yang error kemudian kita tekan control 2 sehingga akan tampil, tampilan seperti pada gambar dibawah ini :
Selanjutnya
kita akan membuat source code untuk infoclient seperti di bawah ini :
import
java.net.*;
import
java.io.*;
import
java.util.*;
public
class InfoClient {
private
final int INFO_PORT=50000;
private
final String TargetHost = "localhost";
private
final String QUIT = "QUIT";
public
InfoClient() {
try {
BufferedReader
inFromUser =
new
BufferedReader(new
InputStreamReader(System.in));
Socket
clientSocket = new
Socket(TargetHost,
INFO_PORT);
DataOutputStream
outToServer =
new
DataOutputStream(
clientSocket.getOutputStream());
BufferedReader
inFromServer =
new
BufferedReader(
new
InputStreamReader(
clientSocket.getInputStream()));
System.out.println(inFromServer.readLine());
System.out.println(inFromServer.readLine());
System.out.println(inFromServer.readLine());
System.out.println("");
boolean
isQuit = false;
while
(!isQuit) {
System.out.print("Perintah
Anda : ");
String cmd
= inFromUser.readLine();
cmd =
cmd.toUpperCase();
if
(cmd.equals(QUIT)) {
isQuit =
true;
}
outToServer.writeBytes(cmd
+ "\n");
String
result = inFromServer.readLine();
System.out.println("Dari
Server: " + result);
}
outToServer.close();
inFromServer.close();
clientSocket.close();
}
catch
(IOException ioe) {
System.out.println("Error:"
+ ioe);
}
catch
(Exception e) {
System.out.println("Error:"
+ e);
}
}
public
static void main(String[] args) {
new
InfoClient();
}
}
Setelah
selesai simpan source code diatas dengan nama file InfoServer.java selanjutnya
kita akan mengcompile program tersebut dengan aplikasi textpad, dengan cara
control 1 untuk mengcompile ny, jika tampil pemberitahuan tool completed
succesfully seperti gambar dibawah ini :
maka
program tersebut tidak ada yang error kemudian kita tekan control 2 sehingga
akan tampil, tampilan seperti pada gambar dibawah ini :
anda dapat mendownload aplikasi ini disini.