Sådan serialiseres et objekt i Java

At serialiserer et objekt i Java, du konvertere data i byte streams, der efterfølgende viser tilbage kopien af ​​de oprindelige data. Hvis dette lyder forvirrende, skal du tænke på serialisering i de følgende termer. Du arbejder på et dokument og gemmer det derefter på din harddisk. Du er i form af tale serialiserende de moquee data, der kan hente kopien senere. Den serialisering gør netværk dataoverførsel meget lettere og mere vigtigt eficientes.É at du forstår det grundlæggende i Java før serialiserer et objekt. Hvis du har brugt programmeringssprog som Pascal og ældre versioner af C, ved du, at uden objektet serialisering, en programmør har at oprette en tekstfil I / O adskille til at gemme og indlæse data. Objektserialisering i Java ignorerer oprettelsen af ​​denne tekstfil for at gemme data, sparer tid og programmeringsomkostninger. Følgende artikel indeholder trinene til serialisering af et objekt i Java. Prøvekoden i denne artikel er brugt med tilladelse fra The Java Developers Almanac 1.4 (Java Developers Almanac).

trin

Billede med titlen Serialiser et objekt i Java Trin 1
1
Åbn Java-kodningsobjektet, der kræver serialisering, eller opret en fra bunden.
  • Billede med titlen Serialiser et objekt i Java Trin 2
    2
    Vælg det Java-objekt, du vil serialisere. I dette eksempel kalder vi objektet "MyObject".
  • 3
    Aktivér serialisering af objekter i Java ved at oprette MyObject-klassen for at arve klassen java.io.Serialize. Blot tilføje følgende linje kode i starten ved at erstatte linjen "public class mitObjekt" .public klasse mitObjekt implementerer java.io.Serializable
  • Billede med titlen Serialiser et objekt i Java Trin 4
    4
    Nu er objektet serialiserbart, hvilket betyder, at det kan skrives af en udgangsstrøm, som denne:
    • Følgende kodelinjer illustrerer, hvordan du skriver MyObject (eller et hvilket som helst serieliserbart objekt) til en fil eller disk.
      prøv {
      // Serialiser dataobjektet til en fil
      ObjectOutputStream out = nyt ObjectOutputStream (nyt FileOutputStream ("MyObject.ser"))
      out.writeObject (objekt) -
      out.close () -

      // Serialiser dataobjektet i en liste over byte
      ByteArrayOutputStream bos = ny ByteArrayOutputStream () -
      out = nyt ObjectOutputStream (bos) -
      out.writeObject (objekt) -
      out.close () -

      // Få bytes af det serialiserede objekt
      byte [] buf = bos.toByteArray () -
      } fangst (IOException e) {
      }


  • Billede med titlen Serialiser et objekt i Java Trin 5
    5
    Det kan læses som dette:
    Jeg forsøger at lave en ny klasse i min klasse, og jeg vil tilføje en ny klasse til min klasse. e.printStackTrace () -}
  • Billede med titlen Serialiser et objekt i Java Trin 7
    6
    Kør den serialiserede objektkode inde i Java-programmet for at sikre, at den fungerer effektivt (valgfrit).
  • 7
    Gem og luk det serielle objekt i Java.
  • tips

    • Serialisering forbedringer i Java SE Development Kit 6 giver dig mulighed for at bruge den ObjectStreamClass lookupAny metode til at håndtere enhver klasse af objekter ikke-Serializable ??.
    • For at forbedre læsning gange og skrevet med store træer af objekter, bruge søgeordet "forbigående" ?? fx variabler, der ikke kræver serialisering. Dette vil øge ydeevnen, hvor du ikke længere læser og skriver unødvendige data i serialiseringsprocessen.

    advarsler

    • Java leveres med en ny version af dens udvikler kit på næsten hvert år. Nye versioner omfatter opdateringer og ændringer om, hvordan du kan serialisere et objekt i Java. Derfor er det vigtigt at overvåge ændringerne i den version, du bruger.
    • Når du serielerer objekter, krypterer du ikke datastrømme. Derfor er du nødt til at stole på andre applikationer eller sekundære netværkstransportprocesser for at beskytte dataene, hvis det er nødvendigt.
    • Der er i øjeblikket ingen mulighed for at skrive objekter til en tilfældig adgangsfil. I stedet kan du bruge Ingress List input streams som en pladsholder, hvorfra du kan læse og skrive objekter. Sørg dog for at hele objektet er i byteslistestrømmen, eller processen vil mislykkes.

    Kilder og citater

    Vis mere ... (4)
    Del på sociale netværk:

    Relaterede
    © 2024 HodTari.com