RKTechGame | Client-Server Architecture in Java

Client-Server Architecture kya hai?

Client-server architecture ek design model hai jisme do alag-alag programs (client aur server) network ke zariye communicate karte hain.

Is model me:

Client-Server Architecture ke Key Components

Java me Client-Server Interaction Steps

Client Example Code (Basic)

import java.net.*;
import java.io.*;

public class Client {
    public static void main(String[] args) {
        String serverIP = "127.0.0.1";
        int port = 5000;

        try (Socket socket = new Socket(serverIP, port);
             BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
             PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
             BufferedReader console = new BufferedReader(new InputStreamReader(System.in))) {

            String inputUser;
            System.out.println("Connected to server: " + serverIP + ":" + port);

            while ((inputUser = console.readLine()) != null) {
                out.println(inputUser);
                String response = in.readLine();
                System.out.println("Server: " + response);

                if ("bye".equalsIgnoreCase(inputUser)) {
                    break;
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Server Example Code (Basic)

import java.net.*;
import java.io.*;

public class Server {
    public static void main(String[] args) {
        int port = 5000;

        try (ServerSocket serverSocket = new ServerSocket(port)) {
            System.out.println("Server listening on port " + port);

            try (Socket clientSocket = serverSocket.accept();
                 BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
                 PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true)) {

                System.out.println("Client connected: " + clientSocket.getInetAddress());

                String clientInput;
                while ((clientInput = in.readLine()) != null) {
                    System.out.println("Client: " + clientInput);
                    out.println("Echo: " + clientInput);

                    if ("bye".equalsIgnoreCase(clientInput)) {
                        break;
                    }
                }
            }
            System.out.println("Client disconnected.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}