Practical No. 16 and 17
Practical No. 16 and 17
16
Server Program:
import java.net.*;
import java.io.*;
class ServerSoc {
public static void main(String args[]) throws Exception {
try {
SSoc SSoc = new SSoc(3333);
Socket CSoc = SSoc.accept();
System.out.println("Client connected!");
DataInputStream din = new DataInputStream(CSoc.getInputStream());
String userId = din.readUTF();
String password = din.readUTF();
String validUserId = "Chaitanya";
String validPassword = "pass@123";
String response;
if (userId.equals(validUserId)) {
if (password.equals(validPassword)) {
response = "Authentication Successful!";
} else {
response = "Authentication Failed! Incorrect password.";
}
} else {
response = "Authentication Failed! User ID not found.";
}
DataOutputStream dout = new DataOutputStream(CSoc.getOutputStream());
dout.writeUTF(response);
din.close();
dout.close();
CSoc.close();
SSoc.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Client Server
Client Program:
import java.io.*;
import java.net.*;
import java.util.Scanner;
class ClientSoc {
public static void main(String args[]) throws Exception {
Scanner sc = new Scanner(System.in);
try {
Socket socket = new Socket("localhost", 3333);
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
System.out.println("Enter user ID: ");
String userId = sc.nextLine();
System.out.println("Password: ");
String password = sc.nextLine();
dout.writeUTF(userId);
dout.writeUTF(password);
DataInputStream din = new DataInputStream(socket.getInputStream());
String response = din.readUTF();
System.out.println("Server response:\t" + response);
dout.close();
din.close();
socket.close();
sc.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Server Program:
import java.io.*;
import java.net.*;
class ChatServer {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(92);
Socket socket = serverSocket.accept();
DataInputStream din = new DataInputStream(socket.getInputStream());
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String clientMessage = "", serverMessage = "";
while (!clientMessage.equals("bye")) {
clientMessage = din.readUTF();
System.out.println("Client says: " + clientMessage);
System.out.print("Server: ");
serverMessage = reader.readLine();
dout.writeUTF(serverMessage);
dout.flush();
}
din.close();
dout.close();
socket.close();
serverSocket.close();
}
}
Client Program:
import java.io.*;
import java.net.*;
class ChatClient {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("localhost", 92);
DataInputStream din = new DataInputStream(socket.getInputStream());
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String clientMessage = "", serverMessage = "";
while (!clientMessage.equals("bye")) {
System.out.print("Client: ");
clientMessage = reader.readLine();
dout.writeUTF(clientMessage);
dout.flush();
serverMessage = din.readUTF();
System.out.println("Server says: " + serverMessage);
}
din.close();
dout.close();
socket.close();
}
}
Client
Server
Q.2
Server
Client
Server Program:
import java.io.*;
import java.net.*;
class PrimeServer {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(92);
Socket socket = serverSocket.accept();
DataInputStream din = new DataInputStream(socket.getInputStream());
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
int number = din.readInt();
System.out.println("Received number: " + number);
String response;
if (isPrime(number)) {
response = number + " is a prime number.";
} else {
response = number + " is not a prime number.";
}
dout.writeUTF(response);
din.close();
dout.close();
socket.close();
serverSocket.close();
}
public static boolean isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i <= Math.sqrt(num); i++) {
if (num % i == 0)
return false;
}
return true;
}
}
Client Program:
import java.io.*;
import java.net.*;
import java.util.*;
class PrimeClient {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
Socket socket = new Socket("localhost", 92);
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
DataInputStream din = new DataInputStream(socket.getInputStream());
System.out.println("Enter a Number(to check Prime or Not): ");
int number = sc.nextInt();
System.out.println("Sent to Server. Waiting for Respose!!!");
dout.writeInt(number);
String response = din.readUTF();
System.out.println("Server response: " + response);
dout.close();
din.close();
socket.close();
sc.close();
}
}