SERVER
import
java.io.*;
import
java.net.*;
Program
diatas memanggil semua fungsi yang terdapat pada library java.io dan java.net.
Library java.io yaitu library untuk proses input dan output melalui data
stream, dan java.net yaitu library untuk implementasi jaringan.
public
class simpleServer {
public
final static int TESTPORT = 5000;
Nama
class pada program ini yaitu simpleServer, dan kita akan mendeklarasikan port
5000 yang digunakan untuk jalur komunikasi.
public
static void main(String args[]) {
ServerSocket
checkServer = null;
String
line;
BufferedReader
is = null;
DataOutputStream
os = null;
Socket
clientSocket = null;
Lalu
deklarasikan variable yang dipakai di dalam program. checkServer
sebagai ServerSocket yang bernilai null (kosong), is
sebagai BufferedReader yang bernilai null (kosong), os sebagai DataOutputStream yang
bernilai null (kosong), clientSocket sebagai socket yang
bernilai null (kosong), dan line dengan tipe data string.
try
{
checkServer
= new ServerSocket(TESTPORT);
System.out.println("Aplikasi
Server hidup ...");
}
catch (IOException e) {
System.out.println(e);
}
Try pertama, checkServer
akan diberi nilai berupa nomor port. Lalu server akan mencetak Aplikasi Server hidup ... pada layar monitor. Jika ada
error yang terjadi pada server dijalankan, maka error tersebut akan ditangani
oleh catch.
try
{
clientSocket
= checkServer.accept();
is
= new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
os
= new DataOutputStream(clientSocket.getOutputStream());
}
catch (Exception ei) {
ei.printStackTrace();
}
Try kedua
untuk inisiasi, is dan os sebagai objek input dan output, serta
untuk menerima request client dengan clientsocket.
try
{
line
= is.readLine();
System.out.println("Terima
: " + line);
if
(line.compareTo("salam") == 0) {
os.writeBytes("salam
juga");
}
else {
os.writeBytes("Maaf,
saya tidak mengerti");
}
}
catch (IOException e) {
System.out.println(e);
}
Try ketiga
untuk menerima dan mengirim pesan. Variable line digunakan sebagai
variable penampung inputan dari client, lalu server akan mencetak Terima : diikuti dengan pesan
yang diterima dari client.
Jika
server menerima pesan salam, maka server akan membalas pesan salam juga. Jika server menerima
pesan lainnya maka server akan membalas Maaf, saya tidak mengerti”.
try
{
os.close();
is.close();
clientSocket.close();
}
catch (IOException ic) {
ic.printStackTrace();
}
}
}
Try keempat
digunakan untuk menutup input, ouput, dan koneksi.
CLIENT
import
java.io.*;
import
java.net.*;
Program
ini memanggil semua fungsi yang terdapat pada library java.io dan java.net.
Library java.io yaitu library untuk proses input dan output melalui data
stream, sedangkan java.net yaitu library untuk implementasi jaringan.
public
class simpleClient {
public
final static int REMOTE_PORT = 5000;
Nama
class program ini simpleClient, dan akan mendeklarasikan port 5000 yang akan
digunakan sebagai jalur komunikasi.
public
static void main(String args[]) throws Exception {
Socket
cl = null;
BufferedReader
is = null;
DataOutputStream
os = null;
BufferedReader
stdin = new BufferedReader(new
InputStreamReader(System.in));
String
userInput = null;
String
output = null;
Kemudian
mendeklarasikan variable yang akan dipakai
di dalam program. cl sebagai Socket yang bernilai null
(kosong), is sebagai BufferedReader yang bernilai null
(kosong), os sebagai DataOutputStream yang bernilai null
(kosong), serta userInput dan output yang bernilai null (kosong)
dengan tipe data string.
try
{
cl
= new Socket(args[0], REMOTE_PORT);
is
= new BufferedReader(new
InputStreamReader(cl.getInputStream()));
os
= new DataOutputStream(cl.getOutputStream());
}
catch(UnknownHostException e1) {
System.out.println("Unknown
Host: " + e1);
}
catch (IOException e2) {
System.out.println("Erorr
io: " + e2);
}
Try pertama
untuk memulai koneksi dengan server menggunakan port yang telah dideklarasikan
sebelumnya. Jika terjadi error pada saat koneksi, maka catch akan
berjalan dan memberikan pesan error yang terjadi.
try
{
System.out.print("Masukkan
kata kunci: ");
userInput
= stdin.readLine();
os.writeBytes(userInput
+ "\n");
}
catch (IOException ex) {
System.out.println("Error
writing to server..." + ex);
}
Try kedua
untuk menuliskan atau mengirim pesan ke server. Program akan mencetak Masukkan kata kunci: . Kemudian client akan
menginput pesan yang akan disimpan di dalam variable userInput, dan akan dikirimkan
ke server dengan perintah os.writeBytes().
try
{
output
= is.readLine();
System.out.println("Dari
server: " + output);
}
catch (IOException e) {
e.printStackTrace();
}
Try ketiga
untuk menerima pesan dari server dan menampilkannya. Program akan mencetak
string Dari
server: diikuti
dengan variable output, merupakan pesan dari server.
try
{
is.close();
os.close();
cl.close();
}
catch (IOException x) {
System.out.println("Error
writing...." + x);
}
}
}
Try keempat
untuk menutup input, ouput, dan koneksi.
judi sabung ayam
BalasHapus