Frage zu Socket und ServerSocket



  • Hi,
    ich muss ein Programm schreiben, was im Endeffekt ein Chat darstellt. Die Eingaben sollen über ein Applet erfolgen. Die Betriebsbereiche sind in Channels aufgeteilt. Jeder der sich einloggt in einem Channel, wird dort auf dem Server in einer Textdatei behalten. Mein Problem ist jetzt, wenn ich mittels eines Socket mich auf dem Server verbinde, weiß der Server zu welchem Client dieser Socket gehört. Wie kann ich nun, wenn sagen wir in der textdatei außer mir noch Schmidt und Schneider sind, diese die Nachricht zukommen lassen. Oder besser gesagt, wie finde ich deren ServerSocket raus?
    Ich weiß nicht, vielleicht mache ich es zu kompliziert oder stelle mich auch etwas doof an, kann auch sein 🙂

    Wäre trotzdem toll wenn jemand helfen könnte bzw. den einen oder anderen Ratschlag geben könnte 🙂



  • Hallo

    Also doof stellt sich kein mensch an vielicht denkst du einfach zu kompliziert.

    1. Du hast du zu jedem Namen ein Socket Object. Warum verwaltest du dann nicht die User(Clients) in einer Hashtable.

    2. ServerSocket hat die methode accept() die die ein Socket object von dem Cleint zurück gibt er sich zum Server verbindet.

    3. Am besten du macht es mit einen ChatHandler der jeden Clienten einzeln bedient.

    Ich würde dir ja gerne schon ein komplettes Programm senden was ich mal geschrieben habe, aber dann hättets du nix davon.

    Noch ein kleiner TIP such mal unter Google nach folgenden stichwörtern "ChatServer, ChatHandler EchoServer".
    Da findest du 1000% einen Beispiel wie man so einen Chatserver angeht.
    Bei Goto Java 2 ist auch ein gutes Beispiel das sich mit diesem Thema befasst.

    BYE


Anmelden zum Antworten