Advanced Java Programming Practical 16
Question 1
Write a program using Socket and ServerSocket to create Chat Application
ChatClient.java
Java
import java.io.*;
import java.net.*;
public class ChatClient
{
public static void main(String[] args) throws IOException
{
Socket s = new Socket("localhost",9999);
System.out.println("Client Started, waiting for server response..");
DataInputStream din = new DataInputStream(System.in);
OutputStream os = s.getOutputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintStream ps = new PrintStream(os);
while(true)
{
System.out.print("Client message: ");
String msg = din.readLine();
ps.println(msg);
String res = br.readLine();
System.out.println("Response from server:"+res+"\n");
}
}
}
ChatServer.java
Java
import java.net.*;
import java.io.*;
public class ChatServer
{
public static void main(String[] args) throws IOException
{
ServerSocket s = new ServerSocket(9999);
System.out.println("Server running.....");
Socket s1 = s.accept();
BufferedReader br = new BufferedReader(new InputStreamReader(s1.getInputStream()));
OutputStream out = s1.getOutputStream();
PrintStream ps = new PrintStream(out);
DataInputStream din = new DataInputStream(System.in);
while(true)
{
String msg = br.readLine();
System.out.println("Message from client: "+msg);
System.out.print("Enter Server message: ");
String smsg = din.readLine();
System.out.print("\n");
ps.println(smsg);
}
}
}
Output

Question 2
Write a program to develop prime number Server (Client will send any number to server, Sever will send the response the number is prime or not)
PrimeClient.java
Java
import java.io.*;
import java.net.*;
public class PrimeClient
{
public static void main(String[] args) throws IOException
{
Socket s = new Socket("localhost",9999);
DataInputStream din = new DataInputStream(System.in);
OutputStream os = s.getOutputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintStream ps = new PrintStream(os);
System.out.print("Enter a number: ");
String num = din.readLine();
ps.println(num);
String res = br.readLine();
System.out.println("Response from server: "+res+"\n");
}
}
PrimeServer.java
Java
import java.net.*;
import java.io.*;
public class PrimeServer
{
public static void main(String[] args) throws IOException
{
int flag=0;
String smsg="";
ServerSocket s = new ServerSocket(9999);
System.out.println("Server running.....");
Socket s1 = s.accept();
BufferedReader br = new BufferedReader(new InputStreamReader(s1.getInputStream()));
OutputStream out = s1.getOutputStream();
PrintStream ps = new PrintStream(out);
String msg = br.readLine();
int num=Integer.parseInt(msg);
for(int i=2;i<num;i++)
{
if(num%i==0)
{
flag=1;
break;
}
}
if(flag==0)
smsg="Number is prime number";
else
smsg="Number is not prime number";
ps.println(smsg);
}
}
Output
