// Purpose. ServerSocket demo [source: Hortsmann98, p140] import java.io.*; import java.net.*; public class ServerSocketDemo { public static void main( String[] args ) { try { ServerSocket server = new ServerSocket( 8189 ); Socket socket = server.accept(); BufferedReader in = new BufferedReader( new InputStreamReader( socket.getInputStream() ) ); PrintWriter out = new PrintWriter( socket.getOutputStream(), true /* auto-flush */ ); while (true) { out.println( " Enter text or 'x' to exit -" ); String str = in.readLine(); if (str == null) break; if (str.equals( "x" )) break; System.out.println( "---" + str + "---" ); out.println( " ---" + str + "---" ); } socket.close(); } catch( IOException e ) { e.printStackTrace(); } } } // C:> java ServerSocketDemo // ---here is first line--- // ---and a second line--- // C:> telnet // Terminal - Preferences - Local Echo // host: 127.0.0.1 // port: 8189 // Connect // // Enter text or 'x' to exit - // here is first line // ---here is first line--- // Enter text or 'x' to exit - // and a second line // ---and a second line--- // Enter text or 'x' to exit - // x