Swing ArrayList in jList

Status
Nicht offen für weitere Antworten.

Curan

Mitglied
Hallo!

Mal ein kleines Vorwort: Ich beschäftige mich erst seit ungefähr 3 Monaten mit Java und kenne mich daher noch nicht all zu gut aus, daher bitte nicht wütend werden wenn ich etwas langsamer unterwegs bin ;O

Folgendes Problem:
Ich versuche grad einen kleinen Java Chat Server sowie Client (genau DAS hat der Welt noch gefehlt :lol:) zu entwickeln.
Momentan speichere ich auf Server Seite meine User in einer statischen ArrayList ab (Nickname + Socket Objekt). Nun möchte ich aber beim Clienten die momentanen User anzeigen. Sprich ich hab in meiner ClientGUI eine jList die ich mit Daten befüllen möchte.

Jetzt weiß ich nur nicht: WIE genau?

Soll ich alle X Sekunden/Minuten die Nicknames (Server) in eine eigene ArrayList schreiben und das ArrayList Objekt an den Clienten schicken und dort in einer Schleife die jList befüllen lassen?

Ich könnte natürlich auch (was besser ist denke ich) meinem Client beim Login in einer Schleife alle Nicknames die sich momentan in der ArrayList befinden zuschicken und dann nur noch bei einem Login/Logoff mitteilen er soll einen bestimmten User hinzufügen/entfernen.

Aber genau bei diesem User hinzufügen/entfernen hänge ich nun. Wie soll er wissen wann ein User hinzugefügt und wann einer entfernt gehört. Mit einem eigenen Protokoll?
A la Switch auf die ersten 3 Symbole, falls es 999 ist gehört der User in der Liste entfernt, ansonsten hinzugefügt ?

Freue mich über Antworten.

lg Sam
 

hiti

Mitglied
Hallo Curan,

ich hab jetzt Deine Vorgehensweise nicht 100% verstanden, aber warum scheust du dich davor, bei Bedarf die ganze Nickname Liste an den client zu schicken?
Das sollte ja vom Trafic her auch nicht viel mehr sein, als halt irgend eine Message, die für einen der Teilnehmer verschickt werden muss.
Hätte auch den Vorteil, dass wenn mal so eine Nachricht 'verloren' geht, ist die Liste beim nächsten Login/Logout beim Client spätestens wieder synchron.
Ansonsten bliebe dir tatsächlich nur einen 'Marker' im Protokoll.

Gruss, hiti
 

Curan

Mitglied
HuHu!

Jap ist etwas schwer für mich zu erklären, aber ich versuchs:

Serversicht:
Client meldet sich an - Socket Objekt wird erstellt
Sobald sich der User mit einem Nickname anmeldet, wird ein Objekt erstellt, in dem der Nickname des Users sowie sein Socket Objekt gespeichert werden.
Dieses Objekt(Nickname + Socket) wird nun in einer ArrayListe abgespeichert.

Anschließend soll an den Client eine Liste geschickt werden, mit den Usern die sich momentan im Chat befinden. Jetzt hab ich eben die Wahl, WIE ich dem Client diese Liste mit den Nicknames zukommen lasse.

Wenn ich eine ArrayListe mit den Nicknames erstelle & verschicke, nun ja, das müsste ich bei jedem Login/Logout eines Benutzers im Chat machen, damit die Liste immer aktuell ist. Das würde doch auf dauer sehr viel traffic fressen?!

Jetzt habe ich mir gedacht, ich löse das ganze so:
Am Anfang bekommt der Client die Nicknames zugesendet und anschließend, wird dem Client nur noch mitgeteilt: Lösche UserXY aus der Liste, füge UserZ hinzu etc

Aber wenn es deiner Meinung nach nicht all zu viel traffic frisst dann löse ich das ganze natürlich mit dem versenden der ArrayList an sich. Wäre nett wenn du mir noch einen Tipp geben könntest in welchem Intervall?! Nur bei bestimmten Aktionen (Login/Logout eines Users) oder auch einfach so alle X Minuten.

lg Sam
 

hiti

Mitglied
Hallo Sam,

Aber wenn es deiner Meinung nach nicht all zu viel traffic frisst dann löse ich das ganze natürlich mit dem versenden der ArrayList an sich. Wäre nett wenn du mir noch einen Tipp geben könntest in welchem Intervall?! Nur bei bestimmten Aktionen (Login/Logout eines Users) oder auch einfach so alle X Minuten.

Wie gesagt übermittelst du ja auch jede Nachricht auf dem selben Wege. Und der Traffic für die Liste fällt ja nur an, wenn sich jemand neu einlogged oder auslogged. Auf keinen Fall in einem Intervall. Wozu?

Prinzipiell muss man sich bei solchen Performance-Themen immer die Frage des Aufwands/Nutzen stellen.
Es ist sicherlich recht einfach die Liste beim Login/out zu versenden. Wenn es aber in der Praxis tatsächlich Probleme macht lässt sich das immernoch mit einem komplizierteren Vorgehen optimieren.
Wozu zuerst eine komplizierte Methode implementieren um ein evtl. Problem zu umgehen, wenn es später gar kein Problem zu umgehen gibt ;)

Gruss, hiti
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
BananenBrötchen Swing Arraylist in jList anzeigen AWT, Swing, JavaFX & SWT 6
D Swing ArrayList in Jlist/ List oder Array in JList/List AWT, Swing, JavaFX & SWT 5
S Swing JList, ArrayList + DefaultModel AWT, Swing, JavaFX & SWT 5
Ollek JList - neuer Eintrag in ArrayList dadurch keine Anzeige der Objekte AWT, Swing, JavaFX & SWT 18
F Swing ArrayList in JList anzeigen und Objekte auswählen AWT, Swing, JavaFX & SWT 2
G jList mit ArrayList füllen AWT, Swing, JavaFX & SWT 3
Linjutsu Den Inhalten aus einer ArrayList Bilder zuweisen (Kartenspiel) AWT, Swing, JavaFX & SWT 8
mrbody234 ArrayList<Message> in eine TableView visualisieren AWT, Swing, JavaFX & SWT 2
Encera ArrayList mit eigenen Objekten in JavaFX sortieren und ausgeben AWT, Swing, JavaFX & SWT 50
S ChoiceBox aus ArrayList per setValue() mit Wert belegen funktioniert nicht. AWT, Swing, JavaFX & SWT 0
W Clear Canvas und anschließendes neues Erstellen von Objekten auf Canvas aus ArrayList AWT, Swing, JavaFX & SWT 4
missy72 JavaFX ObservableList in einer ArrayList speichern. AWT, Swing, JavaFX & SWT 7
B ArrayList, Strings anzeigen AWT, Swing, JavaFX & SWT 1
S JavaFx - ausgewählte Rows in Arraylist (Tableview) AWT, Swing, JavaFX & SWT 4
A Swing Wie Daten in der Form speichern? Array oder ArrayList AWT, Swing, JavaFX & SWT 2
K Swing JComboBox mit ArrayList füllen AWT, Swing, JavaFX & SWT 4
GreenTeaYT Wie vergebe Ich den Jframe Title den Namen aus einem Element von der Arraylist ? AWT, Swing, JavaFX & SWT 4
B Klasse mit ArrayList AWT, Swing, JavaFX & SWT 1
I JTable dynamisch aus ArrayList befüllen AWT, Swing, JavaFX & SWT 3
ZoXlike Wie kann man ArrayList in JTabel einlesen? [WindowBuilder] AWT, Swing, JavaFX & SWT 1
E Eigenes TableModel für ArrayList<String[]> AWT, Swing, JavaFX & SWT 5
S ArrayList Problem AWT, Swing, JavaFX & SWT 3
T JTable dynamisch mit ArrayList AWT, Swing, JavaFX & SWT 2
T Swing Ausgabe aus ArrayList in Klasse1 in jTextArea in Klasse2 AWT, Swing, JavaFX & SWT 2
E Problem mit ArrayList AWT, Swing, JavaFX & SWT 7
P Auf gefüllte ArrayList zugreifen AWT, Swing, JavaFX & SWT 12
P ArrayList Rectangles2D AWT, Swing, JavaFX & SWT 29
O JComboBox mit ArrayList füllen AWT, Swing, JavaFX & SWT 3
D Probleme bei Übertrag von ArrayList in Jtable AWT, Swing, JavaFX & SWT 2
L AWT paint mit ArrayList und Iterator AWT, Swing, JavaFX & SWT 3
Z Swing JButton,JFrame, ArrayList & so weiter... AWT, Swing, JavaFX & SWT 20
C Swing NullPointerException beim Hinzufügen von Checkboxes in eine ArrayList AWT, Swing, JavaFX & SWT 5
G Swing Elemente aus Arraylist auf JFrame anzeigen AWT, Swing, JavaFX & SWT 9
S JTable - 2D ArrayList & Falsche Werte. AWT, Swing, JavaFX & SWT 3
Screen Fehler bei Get-Methode für ArrayList AWT, Swing, JavaFX & SWT 8
M Swing JTable soll auf ArrayList zugreifen AWT, Swing, JavaFX & SWT 8
B Swing JButtons in eine Arraylist<JButton> einfügen AWT, Swing, JavaFX & SWT 2
J Daten aus einer Textdatei in ArrayList holen AWT, Swing, JavaFX & SWT 9
J ArrayList Inhalt zählen AWT, Swing, JavaFX & SWT 53
J ArrayList Datensätze komplett löschen AWT, Swing, JavaFX & SWT 8
J ArrayList Datensätze auswerten AWT, Swing, JavaFX & SWT 10
Y Swing Aktualisieren eines JPanel mit ArrayList im TableLayout AWT, Swing, JavaFX & SWT 2
L ArrayList Wert löschen klappt nicht AWT, Swing, JavaFX & SWT 11
M ArrayList in 2D Array umfüllen AWT, Swing, JavaFX & SWT 9
C Swing ArrayList in JComboBox AWT, Swing, JavaFX & SWT 6
H ArrayList?! in Tabelle AWT, Swing, JavaFX & SWT 3
B ArrayList in JTable AWT, Swing, JavaFX & SWT 3
B ArrayList im JTextArea anzeigen lassen AWT, Swing, JavaFX & SWT 30
Ollek JTable - Tabelle füllen mit einer ArrayList AWT, Swing, JavaFX & SWT 22
T ArrayList aus KlasseA in KlasseB in JTextArea ausgeben AWT, Swing, JavaFX & SWT 12
KrokoDiehl EventListenerList vs. ArrayList AWT, Swing, JavaFX & SWT 3
I Swing JTree aus ArrayList<File> erzeugen AWT, Swing, JavaFX & SWT 15
Spot84 jtable mit checkboxnode dynamisch per arraylist füllen AWT, Swing, JavaFX & SWT 8
G Wie lasse ich einen Graphen zeichnen(mit einer ArrayList)? AWT, Swing, JavaFX & SWT 5
S Tree - ArrayList Zuordnung! AWT, Swing, JavaFX & SWT 13
nadal15 JTable und ArrayList - selected rows löschen AWT, Swing, JavaFX & SWT 6
G JTable - TableModel aus ArrayList AWT, Swing, JavaFX & SWT 8
QDog JComboBox updaten, ArrayList AWT, Swing, JavaFX & SWT 7
D JLabel's in einer ArrayList speichern? AWT, Swing, JavaFX & SWT 4
G datensätze aus der db in einer arraylist speicher und in gui AWT, Swing, JavaFX & SWT 4
G Aus Arraylist bestimmte Objekte wiedergegeben bekommen? AWT, Swing, JavaFX & SWT 7
L JTable und Daten aus einer ArrayList AWT, Swing, JavaFX & SWT 6
A Components in einer ArrayList aus anderer Klasse speichern AWT, Swing, JavaFX & SWT 8
S Anzahl ActionEvents (Strings in eine ArrayList einfügen) AWT, Swing, JavaFX & SWT 4
B Jlist füllen AWT, Swing, JavaFX & SWT 4
H JList.setEnabled(false) - Text soll nicht grau sein AWT, Swing, JavaFX & SWT 2
J Swing JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
A Swing JList zu JTree AWT, Swing, JavaFX & SWT 11
G Eingabe in JTextField in Array speichern und in JList ausgeben AWT, Swing, JavaFX & SWT 7
cezary Choice, JComboBox oder JList AWT, Swing, JavaFX & SWT 5
J JList scrollen AWT, Swing, JavaFX & SWT 3
Neumi5694 Swing JList - Klick abfangen AWT, Swing, JavaFX & SWT 3
G Swing Swing Binding JList funktioniert nicht AWT, Swing, JavaFX & SWT 5
M Swing JList Auswahl-GUI-Konzept AWT, Swing, JavaFX & SWT 9
C JList: Bestimmte Objekte ausschließen AWT, Swing, JavaFX & SWT 1
F JList aktualisiert nicht AWT, Swing, JavaFX & SWT 24
F JList auffüllen aus Array von Instanzen AWT, Swing, JavaFX & SWT 4
F Event wenn Maus eine JList verlässt AWT, Swing, JavaFX & SWT 13
F JList bei Windowbuilder AWT, Swing, JavaFX & SWT 8
F JList zeigt keine Einträge mehr AWT, Swing, JavaFX & SWT 1
P JList erstellen AWT, Swing, JavaFX & SWT 4
G DefaultListModel für JList AWT, Swing, JavaFX & SWT 2
P Einer JList mit eigenem ListModel einen Eintrag hinzfügen AWT, Swing, JavaFX & SWT 5
P Übergeben von ListModel an nichtparametrisierte JList AWT, Swing, JavaFX & SWT 8
M Ein Element in mehreren JList selektieren AWT, Swing, JavaFX & SWT 5
J Swing Probleme mit ListSelectionListener(), Inhalte der JList werden gelöscht? AWT, Swing, JavaFX & SWT 6
Z Swing Variable eines Objekt aus Hashmap in JList anzeigen AWT, Swing, JavaFX & SWT 1
Nabbit Über JList kein JPopupMenu AWT, Swing, JavaFX & SWT 2
O Swing JList beim Klicken in der GUI erstellen AWT, Swing, JavaFX & SWT 6
C Swing JList zeigt keine neuen Einträge an AWT, Swing, JavaFX & SWT 1
B Swing Auf JList-Elemente aus einer anderen Klasse zugreifen AWT, Swing, JavaFX & SWT 1
T Generische Klasse in JList über DefaultListModel AWT, Swing, JavaFX & SWT 1
T Swing WindowBuilder: JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
C Button Text in JList neue Zeile AWT, Swing, JavaFX & SWT 6
C Hilfe bei JSpinner und JList AWT, Swing, JavaFX & SWT 1
S JList ist leer, aber DefaultListModel hat die Daten? AWT, Swing, JavaFX & SWT 9
M JList wird angezeigt, JTable (DefaultTableModel) nicht AWT, Swing, JavaFX & SWT 7
H Swing JList/JTable mit JButton, JTextField, Image, JComboBox und JLable AWT, Swing, JavaFX & SWT 2
D Swing Jlist Größe während der Laufzeit verändern. AWT, Swing, JavaFX & SWT 11
Q JList Update Problem AWT, Swing, JavaFX & SWT 1

Ähnliche Java Themen

Neue Themen


Oben