Wkuno

Hvordan serialisere et objekt i java

Når du serialisere et objekt i Java, kan du konvertere dataene i byte bekker som senere konvertere tilbake til kopi av de opprinnelige dataene. Hvis dette høres forvirrende, tenk på serialisering på følgende måte. Du jobber med et dokument og lagre det på harddisken. Du er, i måten å snakke på, serieomkoding dataene slik at du kan hente denne kopien senere. Serialisering gjør overføring av data på nettverk mye enklere og mer effektiv.
Det er viktig at du forstår det grunnleggende om Java før serieomkoding et objekt. Hvis du har brukt programmeringsspråk som Pascal og eldre versjoner av C, vil du vite at uten objekt serialisering, har en programmerer å lage en egen I / O tekstfil for å lagre og laste inn data. Objekt serialisering i Java forbigår lage denne tekstfilen til å lagre data, noe som sparer tid og programmering kostnader. Den følgende artikkelen inneholder fremgangsmåten for å serialisere et objekt i Java. Prøven i denne artikkelen er brukt med tillatelse fra The Java Developers Almanac 1.4.

Trinn

Hvordan serialisere et objekt i java. Åpne java koding objekt som krever serialisering eller lage en fra bunnen av.
Hvordan serialisere et objekt i java. Åpne java koding objekt som krever serialisering eller lage en fra bunnen av.
  1. 1
    Åpne java koding objekt som krever serialisering eller lage en fra bunnen av.
  2. 2
    Velg objektet java at du vil serienummer. I dette eksempelet, vil vi kalle dette objektet "MyObject."
  3. 3
    Aktiver objekt serialisering i java ved å gjøre MyObject klassen å arve java. Io.Serialize klasse. Bare legge til følgende kode linje i begynnelsen av koden, erstatte "public class MyObject"-linjen.
    public class MyObject implementerer
    java.io.Serializable
  4. 4
    Nå objektet er serializable, det betyr at det kan være skrevet av en output stream, som dette:
    • Følgende kodelinjer illustrere hvordan du skal skrive MyObject (eller noen serializable objekt) til en fil eller disk.
      / / Serialize data objekt til en fil
      out.writeObject (objekt);
      ByteArrayOutputStream bos = new ByteArrayOutputStream ();
      out.writeObject (objekt);
      byte [] buf = bos.toByteArray ();
      }
  5. 5
    Den kan leses som dette:

    FileInputStream dør = new FileInputStream ("name_of_file.sav");
    MyObject x = new MyObject ();
    } Catch (IOException e) {
    }
  6. 6
    Utfør serialized objekt kode i java program for å sørge for at det fungerer effektivt (valgfritt).
  7. 7
    Lagre og lukk serialized objekt i java.

Tips

  • For å bedre lese og skrive ganger i store objekt trær, bruke "forbigående" søkeord for eksempel variabler som ikke krever serialisering. Dette vil øke ytelsen i at du ikke lenger å lese og skrive unødvendige data inn i serialisering prosessen.
  • Serialisering forbedringer i Java SE Development Kit 6 tillate deg å bruke ObjectStreamClass lookupAny metode for å håndtere eventuelle ikke-serialiserbare klasse objekter.

Advarsler

  • Java kommer ut med en ny versjon av sin developer kit på nesten årlig basis. Nye versjoner inkluderer oppgraderinger og endringer i hvordan du kan serialisere et objekt i Java. Derfor er det viktig å overvåke endringer i den versjonen du bruker.
  • Når serieomkoding objekter, kan du ikke kryptere datastrømmer. Derfor må du stole på andre programmer eller sekundære nettverk transport prosesser for å beskytte dataene, om nødvendig.
  • Det er for tiden ingen alternativ som lar deg skrive gjenstander til en random access-fil. I stedet kan du bruke de Byte Array input output bekker som en referanse for å lese og skrive objektene. Men pass på hele elementet i Byte Array streame eller prosessen vil mislykkes.