När du serialisera ett objekt i Java, konverterar du data i byte strömmar som senare omvandlar tillbaka till kopia av de ursprungliga uppgifterna. Om detta låter förvirrande, tänk på serialiseringen i följande termer. Du arbetar på ett dokument och sedan spara den på din hårddisk. Du är, i så att säga, seriealisering data så att du kan hämta den kopian senare. Serialisering gör överföringen av data om nät mycket enklare och effektivare.
Det är viktigt att du förstår grunderna i Java innan seriealisering ett objekt. Om du har använt programmeringsspråk som Pascal och äldre versioner av C, ska du veta att utan objektserialiseringen, har en programmerare för att skapa en separat I / O textfil för att lagra och läsa data. Object serialisering i Java förbikopplingar skapa denna textfil för att lagra data, vilket sparar tid och kostnader för programmering. Följande artikel innehåller stegen att serialisera ett objekt i Java. Provet i den här artikeln används med tillstånd av The Java Developers Almanac 1.4.
Steg
- 1Öppna java kodning objekt som kräver serialisering eller skapa en från scratch.
- 2Markera det objekt i java som du vill serialisera. I detta exempel kommer vi att kalla det objektet "MyObject."
- 3Aktivera objekt serialisering i Java genom att göra myObject klassen att ärva java. Io.Serialize klass. Bara lägga till följande kodrad i början av koden, som ersätter "public class MyObject" linje.
public class MyObject implementerar
java.io.Serializable - 4Nu objektet är serialiserbart, det betyder att det kan vara skrivna av en utgående ström, så här:
- Följande rader kod visar hur man skriver MyObject (eller någon serializable objekt) till en fil eller disk.
/ / Serialisera dataobjekt till en fil
out.writeObject (objekt);
ByteArrayOutputStream bos = ny ByteArrayOutputStream ();
out.writeObject (objekt);
byte [] buf = bos.toByteArray ();
}
- Följande rader kod visar hur man skriver MyObject (eller någon serializable objekt) till en fil eller disk.
- 5Den kan läsas så här:
FileInputStream dörr = ny FileInputStream ("name_of_file.sav");
MyObject x = ny MyObject ();
} Catch (IOException e) {
}
- 6Utför följetong objektkoden inom java program för att se till att den fungerar effektivt (tillval).
- 7Spara och stäng serialiserat objekt i java.
Tips
- Att förbättra läs och skriva tider i stora objekt träd, använd "transient" nyckelordet för instansvariabler som inte kräver serialisering. Detta kommer att öka prestandan i att du inte längre läsa och skriva onödiga data i serialisering processen.
- Serialiseringsinställningar förbättringar i Java SE Development Kit 6 kan du använda ObjectStreamClass lookupAny metod för att hantera eventuella icke-serialiserbara klass objekt.
Varningar
- Java kommer ut med en ny version av deras utvecklare Kit på nästan årligen. Nya versioner inkluderar uppgraderingar och förändringar i hur du kan serialisera ett objekt i Java. Därför är det viktigt att övervaka de förändringar i den version du använder.
- När seriealisering objekt, kan du kryptera inte dataströmmar. Därför måste du lita på andra program eller sekundära nätverk transportprocesser för att skydda data, om det behövs.
- Det finns för närvarande inget alternativ som låter dig att skriva objekt till en random access fil. Istället kan du utnyttja bytearray strömmar in ut som en platshållare för att läsa och skriva föremålen. Se däremot till hela objektet är i bytearrayen ström eller processen kommer att misslyckas.