/** Server-Client-Chat** Server-Version** @version 1.0* @date 16.11.2001* @author Hajo Sygusch*/import java.io.*;import java.net.*;public class Server extends Thread { Socket clientSocket = null; PrintWriter zumClient = null; BufferedReader vomClient = null; String kommando; boolean warten = false; boolean online = true; /* * Methode run() wird vom interface Runnable gefordert * * startet den nebenläufigen Prozess * liest ständig vom Client ankommende Strings ein * * @param - * @return - */ public void run() { System.out.println("Warten auf eingehende Client-Strings..."); //solange man online ist,werden Client-Eingänge überprüft while(online) { try { kommando = vomClient.readLine(); } catch (IOException e) { System.out.println("Fehler beim Lesen des Eingabe-Stream vom Client!"); } if(kommando != null) { System.out.println("Client schrieb: "+kommando); } } } public static void main(String[] args) throws IOException { Server server = new Server(); server.connection(); server.start(); server.chat(); } /* * Methode connection() stellt Verbindung für den Client bereit * * @param - * @return - */ public void connection() throws IOException { //Socket herstellen ServerSocket serverSocket = new ServerSocket(1100); //wartet auf das Einloggen des Clients clientSocket=serverSocket.accept(); System.out.println("Start: Server...\n"); } /* * Methode chat() liest ständig Strings von der Console * und sendet sie an den Server * * @param - * @return - */ public void chat() throws IOException { zumClient = new PrintWriter(clientSocket.getOutputStream(),true); vomClient = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); //Eingabe-Stream von der Console initialisieren BufferedReader ein = new BufferedReader(new InputStreamReader(System.in)); while (online) { String nachricht = ein.readLine(); zumClient.println(nachricht); }// while }// main}// class Serverund noch mein Client:/** Server-Client-Chat** Client-Version** @version 1.0* @date 16.11.2001* @author Hajo Sygusch*/import java.io.*;import java.net.*;public class Client extends Thread{ Socket socket = null; PrintWriter zumServer; BufferedReader vomServer; String empfangen; String senden; boolean online = true; /* * Methode run() wird vom interface Runnable gefordert * * startet den nebenläufigen Prozess * liest ständig vom Server ankommende Strings ein * * @param - * @return - */ public void run() { System.out.println("Client erwartet Eingabe-Strings vom Server..."); while (online) { try { empfangen = vomServer.readLine(); } catch (IOException e) { System.out.println("Fehler beim Empfang des Server-Strings"); } if(empfangen != null) { System.out.println("Der Server schrieb: "+empfangen); } }//while } public static void main(String args[]) throws IOException { Client client = new Client(); client.connection(); client.start(); client.chat(); } /* * Methode connection() öffenet Verbindung zum Server * * @param - * @return - */ public void connection() throws UnknownHostException { //Socket zum server öffnen try { socket = new Socket("localhost",1100); } catch (IOException e){ System.out.println("Kein Server gefunden"); } System.out.println("Verbindung steht..."); } /* * Methode chat() liest ständig Strings von der Console * und sendet sie an den Server * * @param - * @return - */ public void chat() throws IOException { //Eingabe-Stream vom Server initialisieren InputStreamReader inputstream = new InputStreamReader(socket.getInputStream()); vomServer = new BufferedReader(inputstream); //Ausgabe-Stream zum Server initialisieren zumServer = new PrintWriter(socket.getOutputStream(),true); //Eingabe-Stream von der Console initialisieren BufferedReader ein = new BufferedReader(new InputStreamReader(System.in)); while (online) { //Einlesen von der Console senden = ein.readLine(); //senden der Eingabe an den Server zumServer.println(senden); }//while }}