Socket programming ek technique hai jisme computers ya programs network ke zariye aapas me communicate karte hain. Java me Socket
class client ko represent karti hai aur ServerSocket
class server ko.
Ye TCP/IP protocol ke upar kaam karta hai jisme ek reliable two-way communication establish hoti hai.
ServerSocket
bana ke clients ke liye wait karta hai.Socket
bana kar server ke IP aur port se connect hota hai.import java.net.*;
import java.io.*;
public class SimpleServer {
public static void main(String[] args) throws IOException {
int port = 5000;
ServerSocket server = new ServerSocket(port);
System.out.println("Server started at port " + port);
try (Socket client = server.accept()) {
System.out.println("Client connected: " + client.getInetAddress());
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
PrintWriter out = new PrintWriter(client.getOutputStream(), true);
String line;
while ((line = in.readLine()) != null) {
System.out.println("Received from client: " + line);
out.println("Echo: " + line); // Server echoes back the message
if ("exit".equalsIgnoreCase(line)) break;
}
}
System.out.println("Server closing...");
server.close();
}
}
import java.net.*;
import java.io.*;
public class SimpleClient {
public static void main(String[] args) throws IOException {
String serverName = "localhost";
int port = 5000;
try (Socket socket = new Socket(serverName, port);
BufferedReader console = new BufferedReader(new InputStreamReader(System.in));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()))) {
System.out.println("Connected to server at " + serverName + ":" + port);
String userInput;
while ((userInput = console.readLine()) != null) {
out.println(userInput); // send to server
System.out.println("Server response: " + in.readLine()); // read from server
if ("exit".equalsIgnoreCase(userInput)) break;
}
}
}
}