// tcpServer.java // uso : java tcpServer {puerto} // asume puerto 1500. // 1 conexion. import java.net.*; import java.io.*; public class tcpServer { public static void main(String args[]) { int port; ServerSocket server_socket; BufferedReader input; System.out.println("EJEMPLO DE JAVA TCP SERVER"); try { port = Integer.parseInt(args[0]); } catch (Exception e) { System.out.println("Asume puerto = 1500"); port = 1500; } try { server_socket = new ServerSocket(port); System.out.println("Servidor esperando por cliente en puerto " + server_socket.getLocalPort()); // server infinite loop while (true) { Socket socket = server_socket.accept(); System.out.println("Acepta nueva conexión " + socket.getInetAddress() + ":" + socket.getPort()); input = new BufferedReader (new InputStreamReader(socket.getInputStream())); // Saca el mensaje recibido try { while (true) { String message = input.readLine(); if (message==null) break; System.out.println(message); } } catch (IOException e) { System.out.println(e); } // El cliente cierra la conexion try { socket.close(); System.out.println("Conexión cerrada por el cliente"); } catch (IOException e) { System.out.println(e); } } } catch (IOException e) { System.out.println(e); } } }