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

Derita Laptop Ganti: Sahabat Lama Menjadi Asing Bagiku

Sekitar satu tahun yang lalu, aku dan kakakku Mba Lala , tukeran laptop karena ada sedikit masalah dengan OS laptop mba lala, jadi aku memutuskan untuk membawanya buat dibenerin di comlabs aja. Satu tahun berlalu, hari demi hari aku lalui bersama laptop mba lala itu. Susah dan duka (susah dan duka ?) aku lalui bersama laptop toshiba hitam berkulit berudu. Ada kalanya seneng, ada kalanya juga engga. Ada kalanya dia responsif, tapi ada kalanya juga bebel ngambek engga nurut gerakan jari jemari yang bikin hati kesel. Tapi lebih dari itu, tanpa terasa ikatan batin antara aku dan laptop yang engga bisa aktifin bluetooth itu terjalin begitu kuat. Aku seolah tahu dimana letak file movie hanya mengklik ini dan itu dengan mata terpejam bahkan sambil tidur dan mimpi lelap. Aku sudah terbiasa dengan tata letak, environment, dan workspace yang terbangun didalamnya. Dan yang paling penting, laptop tipe satelite itu telah membantuku dalam menyelesaikan berbagai badai tubes dan tucil, membantuku di...

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...

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...