Today, I will introduce the basic network communication program using Transport Layer Protocol named TCP. This is really easy to implement in JAVA. There are two files in this program. A client program and server program. It is important to note that the server program must be started first at the server and then afterwards, run the client program.
tcpserver.java
import java.io.*;
import java.net.*;
class tcpserver
{
public static void main(String args[])throws Exception
{
System.out.println("Server started....n");
try
{
ServerSocket welcome_socket=new ServerSocket(1234);
while(true)
{
Socket listen_socket=welcome_socket.accept();
BufferedReader server_input=new BufferedReader(new InputStreamReader(System.in));
BufferedReader client_out=new BufferedReader(new InputStreamReader(listen_socket.getInputStream()));
DataOutputStream server_out=new DataOutputStream(listen_socket.getOutputStream());
String client_str,server_str;
client_str=client_out.readLine();
System.out.println("Client:"+client_str+'n');
System.out.println("Enter message:");
server_str=server_input.readLine();
server_out.writeBytes(server_str+'n');
}
}
catch (Exception e)
{
System.out.println("Error:"+e.getMessage());
}
}
}
tcpclient.java
import java.io.*;
import java.net.*;
class tcpclient
{
public static void main(String args[])throws Exception
{
System.out.println("Client started...");
try
{
Socket client_socket=new Socket("localhost",1234);
while(true)
{
BufferedReader client_input=new BufferedReader(new InputStreamReader(System.in));
BufferedReader server_out=new BufferedReader(new InputStreamReader(client_socket.getInputStream()));
DataOutputStream client_out=new DataOutputStream(client_socket.getOutputStream());
String client_str,server_str;
System.out.println("Enter message:");
client_str=client_input.readLine();
client_out.writeBytes(client_str+'n');
server_str=server_out.readLine();
System.out.println("Server:"+server_str+'n');
}
}
catch(Exception e)
{
System.out.println("Error:"+e.getMessage());
}
}
}