Hoe om `n voorwerp in Java te serialiseer
Wanneer u `n voorwerp in Java serialiseer, doen u die data om in byte-strome wat dan weer in `n kopie van die oorspronklike data omskep word. As dit verwarrend is, dink aan serialisering in die volgende terme. Gestel jy werk aan `n dokument en stoor dit op jou hardeskyf. Wat jy sou doen, sou wees om die data te serialiseer sodat jy later `n kopie kan kry. Serialisering maak die oordrag van data op die netwerk baie makliker en doeltreffender. Dit is belangrik dat jy die noodsaaklikhede van Java verstaan voordat jy `n voorwerp serialiseer. As jy gebruik tale soos Pascal en ouer weergawes van C, jy weet dat sonder serialisasie, moet die programmeerder `n lêer I / S van afsonderlike teks te skep, te laai data stoor en. Die serialisering van voorwerpe in Java vermy om hierdie tekslêer te skep om die data te stoor, en bespaar tyd sowel as programkoste. Die volgende artikel bevat die stappe om `n voorwerp in Java te serialiseer. Die voorbeeldkode wat in hierdie artikel verskyn, is met vergunning van The Java Developers Almanac 1.4.
conținut
stappe




probeer {
// Serialiseer `n data-voorwerp na `n lêer
ObjectOutputStream out = nuwe ObjectOutputStream (new
FileOutputStream ("MyObject.ser")) -
out.writeObject (voorwerp) -
out.close () -
// Serialiseer `n data-voorwerp na `n byte-skikking
ByteArrayOutputStream bos = nuwe ByteArrayOutputStream () -
out = nuwe ObjectOutputStream (bos) -
out.writeObject (voorwerp) -
out.close () -
// Haal die grepe van die serialized object
byte [] buf = bos.toByteArray () -
} vang (IOException e) {
}

- Probeer {FileInputStream deur = nuwe FileInputStream ( "name_of_file.sav") - ObjectInputStream leser = nuwe ObjectInputStream (deur) -MyObject x = nuwe MyObject () - x = (MyObject) reader.nextObject () -} catch (IOException e) { e.printStackTrace () -}


wenke
- Om lees en skryf tye in groot voorwerpbome te verbeter, gebruik die term "oorgangs" om veranderlikes te skep wat nie serialisering benodig nie. Dit sal prestasie verbeter omdat jy nie meer onnodige data in die serialiseringsproses lees of skryf nie.
- Die uitbreidings tot serialisering in Java SE Development Kit 6 stel u in staat om die ObjectStreamClass lookupAny-metode te gebruik om enige voorwerp in nie-serialiseerbare klasse te manipuleer.
waarskuwings
- Java laat gewoonlik elke jaar `n nuwe weergawe van die Develpment Kit uit. Die nuwe weergawes bevat opdaterings en veranderinge rakende die maniere waarop jy `n voorwerp in Java kan serialiseer. Daarom is dit belangrik om die veranderinge in die weergawe wat u gebruik, in ag te neem.
- Wanneer u voorwerpe serialiseer, kan u nie data vloei nie. Gevolglik sal jy moet staatmaak op ander toepassings of sekondêre netwerkvervoerprosesse om die data te beskerm, indien nodig.
- Tans is daar geen opsie waarmee jy voorwerpe in willekeurige toegangslêers kan skryf nie. In plaas daarvan kan jy Byte Array invoer- en uitvoerstrome gebruik as `n moontlike plek om voorwerpe te lees en te skryf. U moet egter seker maak dat die hele voorwerp in die vloei van die Byte Array is, anders sal die proses misluk.
Hoe om Java te installeer
Hoe om `n Java-venster in Swing te sluit
Hoe om jou Java-weergawe van die Windows-opdraglyn na te gaan
Hoe om jou Java_Home-pad in Ubuntu op te stel
Hoe om jou eerste Java-program in Ubuntu Linux te skep
Hoe om Java te laai in Internet Explorer
Hoe om HTTP POST versoeke op Android uit te voer
Hoe om die som van twee getalle in Java te vind
Hoe om `n skikking in Java te druk
Hoe om Java op Windows 8 te installeer
Hoe om Java op Ubuntu te installeer
Hoe om `n metode in Java te bel
Hoe om die lengte van `n tou in Java te kry
Hoe om Java te herstel
Hoe om JSON te gebruik
Hoe om te kontroleer of jаvascript werk met behulp van Java Tester
Hoe om die Java-geheue in Windows 7 te verhoog
Hoe om Java-tuis te konfigureer
Hoe om `n Java-ontwikkelaar op die hoogste vlak te word
Hoe om `n veranderlike in Java te skep
Hoe om die weergawe van Java geïnstalleer te bepaal