Beste Weg, um senden Sie eine ArrayList<String[]> über TCP in Java?
Ich Schreibe eine client/server Applikation in Java, und ich bin über TCP, um Daten zu übertragen die ich bin, die Speicherung in einer ArrayList (z.B. Eine ArrayList mit arrays von Strings).
Was ist der beste Weg, zu übertragen, die Daten vom einen zum anderen? Sollte ich machen eine lange Zeichenfolge und verwenden Sie einen PrintWriter von der println () - oder gibt es eine bessere Möglichkeit?
Vielen Dank!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Um ein bisschen zu skaffman Antwort:
Und auf dem client:
Vorausgesetzt, beide client und server in Java geschrieben, und angenommen, Sie sind stick mit raw-sockets, anstatt auf eine höhere Ebene remoting framework:
Ähnlich, verwenden
ObjectInputStream
am empfangenden Ende.Sollte gut funktionieren, solange alles in der Liste implementiert
java.io.Serializable
.Möchten Sie vielleicht zu prüfen, die JSON-framework. Sehen json.org
JSON = Javascript Object Notation
. Obwohl der name schon sagt die Verwendung von Javascript, die json.jar ist eine gute Serialisierung/Deserialisierung-tool.Viele Menschen würden mit einem web-service-framework für diese, wie Apache CXF. Sie könnten auch gehen eine Ebene nach unten zu JAXB-oder XML-Beans.
Möchten Sie vielleicht einen Blick in Serialisierung. Sie könnten nur machen Sie Ihr eigenes format für solch einen einfachen Fall, obwohl. Ich persönlich zugunsten bencoding. Der minimale Aufwand (und zumindest bug-anfällig) Lösung ist die Serialisierung, obwohl.