So serialisieren Sie ein Objekt in Java: 8 Schritte (mit Bildern)

Inhaltsverzeichnis:

So serialisieren Sie ein Objekt in Java: 8 Schritte (mit Bildern)
So serialisieren Sie ein Objekt in Java: 8 Schritte (mit Bildern)

Video: So serialisieren Sie ein Objekt in Java: 8 Schritte (mit Bildern)

Video: So serialisieren Sie ein Objekt in Java: 8 Schritte (mit Bildern)
Video: Technisches Zeichnen mit Inkscape 2024, Kann
Anonim

Wenn Sie ein Objekt in Java serialisieren, konvertieren Sie die Daten in Bytestreams, die später wieder in die Kopie der Originaldaten konvertiert werden. Wenn dies verwirrend klingt, denken Sie an die Serialisierung in den folgenden Begriffen. Sie arbeiten an einem Dokument und speichern es dann auf Ihrer Festplatte. Sie serialisieren die Daten sozusagen, damit Sie diese Kopie später abrufen können. Die Serialisierung macht die Übertragung von Daten in Netzwerken viel einfacher und effizienter.

Es ist wichtig, dass Sie die Grundlagen von Java verstehen, bevor Sie ein Objekt serialisieren. Wenn Sie Programmiersprachen wie Pascal und ältere Versionen von C verwendet haben, wissen Sie, dass ein Programmierer ohne Objektserialisierung eine separate E/A-Textdatei erstellen muss, um Daten zu speichern und zu laden. Bei der Objektserialisierung in Java wird das Erstellen dieser Textdatei zum Speichern von Daten umgangen, wodurch Zeit und Programmierkosten gespart werden. Der folgende Artikel enthält die Schritte zum Serialisieren eines Objekts in Java. Der Beispielcode in diesem Artikel wird mit freundlicher Genehmigung von The Java Developers Almanac 1.4 verwendet.

Schritte

Serialisieren eines Objekts in Java Schritt 1
Serialisieren eines Objekts in Java Schritt 1

Schritt 1. Öffnen Sie das Java-Codierungsobjekt, das eine Serialisierung erfordert, oder erstellen Sie eines von Grund auf neu

Serialisieren eines Objekts in Java Schritt 2
Serialisieren eines Objekts in Java Schritt 2

Schritt 2. Wählen Sie das Objekt in Java aus, das Sie serialisieren möchten

In diesem Beispiel nennen wir dieses Objekt „MyObject“.

Serialisieren eines Objekts in Java Schritt 3
Serialisieren eines Objekts in Java Schritt 3

Schritt 3. Aktivieren Sie die Objektserialisierung in Java, indem Sie die MyObject-Klasse so konfigurieren, dass die java.io. Serialize-Schnittstelle implementiert wird

Fügen Sie einfach die folgende Codezeile am Anfang des Codes hinzu und ersetzen Sie die Zeile "öffentliche Klasse MyObject". Die öffentliche Klasse MyObject implementiert java.io. Serializable

Serialisieren eines Objekts in Java Schritt 4
Serialisieren eines Objekts in Java Schritt 4

Schritt 4. Jetzt ist Ihr Objekt serialisierbar, d. h., es kann von einem Ausgabestream wie folgt geschrieben werden:

  • Die folgenden Codezeilen veranschaulichen, wie MyObject (oder ein beliebiges serialisierbares Objekt) in eine Datei oder einen Datenträger geschrieben wird.

    Versuchen{

    // Datenobjekt in eine Datei serialisieren

    ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("MyObject.ser"));

    out.writeObject(Objekt);

    out.close();

    // Datenobjekt in ein Byte-Array serialisieren

    ByteArrayOutputStream bos = new ByteArrayOutputStream();

    out = neuer ObjectOutputStream(bos);

    out.writeObject(Objekt);

    out.close();

    // Hole die Bytes des serialisierten Objekts

    byte buf = bos.toByteArray();

    } catch (IOException e) {

    }

Serialisieren eines Objekts in Java Schritt 5
Serialisieren eines Objekts in Java Schritt 5

Schritt 5. Es kann so gelesen werden:

try{ FileInputStream Tür = new FileInputStream("name_of_file.sav"); ObjectInputStream-Leser = new ObjectInputStream(door); MyObject x = neues MyObject(); x = (MyObject) reader.nextObject();}catch (IOException e){ e.printStackTrace();}

Serialisieren eines Objekts in Java Schritt 6
Serialisieren eines Objekts in Java Schritt 6
Serialisieren eines Objekts in Java Schritt 7
Serialisieren eines Objekts in Java Schritt 7

Schritt 6. Führen Sie den serialisierten Objektcode innerhalb des Java-Programms aus, um sicherzustellen, dass es effektiv funktioniert (optional)

Führen Sie eine. Jar-Java-Datei aus Schritt 9
Führen Sie eine. Jar-Java-Datei aus Schritt 9

Schritt 7. Speichern und schließen Sie das serialisierte Objekt in Java

Tipps

  • Serialisierungsverbesserungen im Java SE Development Kit 6 ermöglichen es Ihnen, mit der ObjectStreamClass-Suche jede Methode zu verwenden, um alle nicht serialisierbaren Klassenobjekte zu verarbeiten.
  • Um die Lese- und Schreibzeiten in großen Objektbäumen zu verbessern, verwenden Sie das Schlüsselwort „transient“für Instanzvariablen, die keine Serialisierung erfordern. Dadurch wird die Leistung erhöht, da Sie beim Serialisierungsprozess keine unnötigen Daten mehr lesen und schreiben.

Warnungen

  • Java bringt fast jährlich eine neue Version seines Entwickler-Kits heraus. Neue Versionen umfassen Upgrades und Änderungen an der Serialisierung eines Objekts in Java. Daher ist es wichtig, die Änderungen in der von Ihnen verwendeten Version zu überwachen.
  • Beim Serialisieren von Objekten können Sie Datenströme nicht verschlüsseln. Daher müssen Sie sich bei Bedarf auf andere Anwendungen oder sekundäre Netzwerktransportprozesse verlassen, um die Daten zu schützen.
  • Derzeit gibt es keine Option, mit der Sie Objekte in eine Direktzugriffsdatei schreiben können. Stattdessen können Sie die Byte-Array-Eingabe-Ausgabe-Streams als Platzhalter verwenden, um die Objekte zu lesen und zu schreiben. Stellen Sie jedoch sicher, dass sich das gesamte Objekt im Byte-Array-Stream befindet, oder der Vorgang schlägt fehl.

Empfohlen: