Skip to main content

A Simple Java TCP Server

Here is a simple example of TCP Server using java. It gives you idea about how TCP server opens up a port and receives message from TCP client.

To compile this code, simply install Java JDK to your computer. Then save this code with file name Server.java and then open terminal. Change your directory to where you save this file and type in javac Server.java - this will create new file Server.class, don't do anything with .class file unless you'll get an error: "Exception in thread "main" java.lang.NoClassDefFoundError". And then type in terminal java Server .

 import java.io.*;  
 import java.net.*;  
 import java.util.Scanner;  
   
 class Server{  
  private static Server server;  
  static int serverPort = 1234;  
  static ServerSocket welcomeSocket;  
    
  public Server(){  
  try{  
   welcomeSocket = new ServerSocket(setSocket());  
  }catch(Exception e){  
   System.out.println("Error: "+e.getMessage());  
  }  
  }  
    
  private int setSocket(){  
  Scanner in = new Scanner(System.in);  
  System.out.print("Enter socket number:");  
  serverPort = in.nextInt();  
  System.out.println("Socket number "+serverPort+" created.");  
  System.out.println("Listening...");  
  return serverPort;  
  }  
    
  public static void main(String argv[]) throws Exception {  
  server = new Server();  
  String clientSentence;       
  String capitalizedSentence;       
  while(true){  
   Socket connectionSocket = welcomeSocket.accept();         
   BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));  
   DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());  
   clientSentence = inFromClient.readLine();  
   System.out.println("Received: " + clientSentence);         
   capitalizedSentence = clientSentence.toUpperCase() + " from "+serverPort+'\n';         
   outToClient.writeBytes(capitalizedSentence);       
  }   
  }  
 }  


Next post will be a simple Java TCP Client.

#source: https://systembash.com/a-simple-java-tcp-server-and-tcp-client/

Comments

Popular posts from this blog

Visiting Animals with My Family

Big day, big day, big day.... /XD Yup, this is a very big day, for me. Why? Because, my parents, and my brother, are coming. I'm pretty excited, but also nervous. You know how it feels when you have a very messy room, and you got your parents are coming? Or you don't know what to do with your family as you have a tiny sized room? Arrhg /shock, it's complicated. But very exciting too. X-D First time of our journey, we were arriving at Sabuga. One of the lovely building style in here (ITB) is the classical stone that covers almost in all the part of the building... Oho, what is this? :P I was not using a professional camera, and I'm not a photographer too, so I couldn't make a good one. hehe. Bye the way, this is under the ground pipe.. Some places in ITB are unique (people said that), and one of them are 'echo point'. This place, if you speak up loud enough, will be able to spread out into all around of ITB and everyone's gonna...

Lakukan Apapun yang Menjadi Renjana-mu Meskipun Hidupmu Semenjana

Judul di atas mungkin sedikit sulit diartikan atau bahkan membingungkan bagi kita. Mungkin ada juga yang mengira kalau aku menyisipkan kata-kata asing atau apa. Padahal sebenarnya, semua deretan kata dalam judul diatas murni bahasa kita tercinta, Bahasa Indonesia. Ya, semuanya kata asli Indonesia. Hanya saja kita tidak terbiasa menggunakannya yang membuat kita merasa asing. Padahal jika aku ganti dengan kata asing, kalimat itu justru tidak asing. Ini nih: "Lakukan Apapun yang Menjadi Passion -Mu Meskipun Hidupmu Biasa-biasa Saja ". Sekarang jauh lebih mudah dimengerti kan? Terlepas apakah kalimat itu punya makna atau tidak, akan tetapi, kita lebih mudah mencerna setiap kata dalam kalimat itu. Hal ini memang miris mengingat kita lebih kenal dan lebih dekat dengan bahasa asing dari pada bahasa asli sendiri yang membuat kita merasa asing dengan bahasa sendiri dan bahasa asing malah tidak terasa asing karena sering kita gunakan. #mbulet-mbulet kalimatnya Sis: "Bro, ...

Ramadhan 1435H & Silaturahmi keluarga

Baju baru alhamdulillah, tuk dipakai di hari raya, Tak punya pun tak apa-apa, masih ada baju yang lama. Sepatu baru alhamdulillah, tuk dipakai di hari raya, Tak punya pun tak apa-apa, masih ada sepatu yang lama. Kue baru alhamdulillah, tuk dimakan di hari raya, Tak punya pun tak apa-apa, masih ada kue yang lama. /wahaha Alhamdulillah, tidak terasa ramadhan telah berlalu. Rasa syukur ku kepada Allah SWT. karena telah diberi kesempatan untuk bisa bertemu ramadhan tahun ini sampai selesai. Meskipun Ramadhan udah selesai, semoga hati dan jiwa tetap fitri dan selalu terjaga. Ramadhan kali ini sangat menyenangkan meskipun setengahnya aku jalanin tanpa keluarga, tanpa sanak saudara yang menemani jerih payah puasa. /sweat Tapi ngga papa, yang penting inti dari ibadah bulan ramadhan tetep didapat. #intinya apa ya? Seperti ramadhan-ramadhan sebelumnya, setiap satu minggu sebelum lebaran ibu (dan aku) pasti bikin kue-kue penghias meja. Kali ini pun sama. Aksi bikin kue pun terjadi...