Mar 062013
 

Sample UDP Client Server

Assalamu’ alaikum wr wb

User Datagram Protocol (UDP), adalah salah satu protokol lapisan transpor TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan yang menggunakan TCP/IP. Protokol ini didefinisikan dalam RFC 768.

Oke mari langsung saja kita tulis script nya untuk sisi server

import java.io.*;
import java.net.*;

class UDPServer
{
 public static void main(String args[]) throws Exception
 {
 DatagramSocket serverSocket = new DatagramSocket(9876);
 byte[] receiveData = new byte[1024];
 byte[] sendData = new byte[1024];
 while(true)
 {
 //Deklarasi penerimaan paket
 DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
 serverSocket.receive(receivePacket);
 //Simpan dalam variabel dan cetak
 String sentence = new String( receivePacket.getData());
 System.out.println("RECEIVED: " + sentence);
 //Ambil Default IP yang mengirimkan pesan
 InetAddress IPAddress = receivePacket.getAddress();
 //Ambil port yang mengirimkan data
 int port = receivePacket.getPort();
 //Jadikan huruf besar data yang di terima
 String capitalizedSentence = sentence.toUpperCase();
 //Konvert data yang di terima menjadi byte data
 sendData = capitalizedSentence.getBytes();
 DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, port);
 //Kirim kembali data yang terlah di terima
 serverSocket.send(sendPacket);
 }
 }
}

Sekarang untuk aplikasi client nya

import java.io.*;
import java.net.*;

class UDPClient
{
 public static void main(String args[]) throws Exception
 {
 //Baca Inputan keyboard
 BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
 //Deklarasi data paket
 DatagramSocket clientSocket = new DatagramSocket();
 //Lokasi server yang akan dikirim data
 InetAddress IPAddress = InetAddress.getByName("localhost");
 //Deklarasi port server
 int port = 9876;
 //Data yang akan di kirim
 byte[] sendData = new byte[1024];
 //data yang di terima dari server
 byte[] receiveData = new byte[1024];
 //Masukkan data darui keyboard ke variabel
 String sentence = inFromUser.readLine();
 try
 {
 //setting timeout
 clientSocket.setSoTimeout(1000);
 //Masukkan ke send data
 sendData = sentence.getBytes();
 //Inisialisasi paket yang di kirim
 DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, port);
 //Kirim paket data
 clientSocket.send(sendPacket);

 //Ambil data yang di kirim oleh server
 DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
 clientSocket.receive(receivePacket);
 //Masukkan data yang di kirim oleh server
 //Konvert dari byte ke string
 String modifiedSentence = new String(receivePacket.getData());
 //Cetak ke layar
 System.out.println("FROM SERVER:" + modifiedSentence);

 }catch (SocketException | SocketTimeoutException EX){;
 System.out.println(EX.getMessage());
 }finally{
 //Tutup UDP
 clientSocket.close();
 }
 }
}

Selamat mencoba semoga membantu

Wassalamu’ alaikum wr wb

Nov 022012
 

Assalamu’ alaikum wr wb

Penjumlahan dalam javascript

Beberapa saat ini saya banyak melakukan experimen untuk pembuatan beberapa aplikasi yang memang membutuhkan proses client side.

Setelah melakukan beberapa percobaan saya akan membagi beberapa pengalaman saya dalam hal perhitungan dalam javascript, pada awalnya saat melakukan penjumlahan saya menggunakan rumus yang umum digunakan.

Contoh : var jml = parseFloat(“1000”) + parseFloat(“1000”) ;

Ternyata selain menggunakan rumus di atas ada sebuah function yang bisa kita gunakan untuk  melakukan penjumlahan string, saya kita dengan ini akan memudahkan kita dalam penjumalah dalam javascript kita.

Berikut adalah function yang bisa digunakan.

var jml = eval("1000+1000") ;
//atau
var jml = eval("1000/1000") ;

kode pertama dan kedua akan melakukan penjumalah sesuai dengan operator di sampingnya.

Semoga dapat digunakan dan di manfaatkan sesuai dengan kebutuhan.

Wassalamu’alaikum wr wb