Java -da bir obyekti necə seriyalaşdırmaq olar: 8 addım (şəkillərlə)

Mündəricat:

Java -da bir obyekti necə seriyalaşdırmaq olar: 8 addım (şəkillərlə)
Java -da bir obyekti necə seriyalaşdırmaq olar: 8 addım (şəkillərlə)

Video: Java -da bir obyekti necə seriyalaşdırmaq olar: 8 addım (şəkillərlə)

Video: Java -da bir obyekti necə seriyalaşdırmaq olar: 8 addım (şəkillərlə)
Video: Apple Pay Azərbaycana gəldi – necə istifadə edək? 2024, Bilər
Anonim

Java -da bir obyekti seriyalaşdırdığınızda, məlumatları bayt axınlarına çevirirsiniz, sonra daha sonra orijinal məlumatların surətinə çevrilir. Bu qarışıq səslənirsə, aşağıdakı terminlərlə seriallaşdırma düşünün. Sənəd üzərində işləyirsən və sonra onu sabit diskinə saxlayırsan. Danışmaq tərzi ilə məlumatları ardıcıllaşdırırsınız ki, sonradan həmin nüsxəni əldə edə biləsiniz. Serializasiya şəbəkələrdəki məlumatların ötürülməsini daha asan və daha səmərəli edir.

Bir obyekti seriallaşdırmadan əvvəl Java -nın əsaslarını başa düşməyiniz vacibdir. Pascal və C -nin köhnə versiyaları kimi proqramlaşdırma dillərindən istifadə etmisinizsə, biləcəksiniz ki, obyektlərin seriyalaşdırılması olmadan proqramçı məlumatları saxlamaq və yükləmək üçün ayrıca bir G/Ç mətn faylı yaratmalıdır. Java -da obyektlərin seriyalaşdırılması, məlumatları saxlamaq, vaxta və proqramlaşdırma xərclərinə qənaət etmək üçün bu mətn faylını yaratmağı aşır. Aşağıdakı məqalədə, Java -da bir obyekti ardıcıllaşdırmaq üçün addımlar var. Bu məqalədəki nümunə kod, Java Developers Almanac 1.4 -ün izni ilə istifadə edilmişdir.

Addımlar

Java -da bir obyekti seriyalaşdırın Addım 1
Java -da bir obyekti seriyalaşdırın Addım 1

Addım 1. Seriallaşdırma tələb edən Java kodlaşdırma obyektini açın və ya sıfırdan yaradın

Java -da bir obyekti seriyalaşdırın 2 -ci addım
Java -da bir obyekti seriyalaşdırın 2 -ci addım

Addım 2. Java -da seriallaşdırmaq istədiyiniz obyekti seçin

Bu nümunədə həmin obyektə "MyObject" deyəcəyik.

Java -da bir obyekti seriyalaşdırın Adım 3
Java -da bir obyekti seriyalaşdırın Adım 3

Addım 3. MyObject sinifini java.io. Serialize interfeysini həyata keçirtməklə Java -da obyektlərin seriallaşdırılmasını aktivləşdirin

Kodun əvvəlinə "ictimai sinif MyObject" line.public sinif MyObject əvəz edərək aşağıdakı kod satırını əlavə edin java.io. Serializable

Java 4 -də bir obyekti seriyalaşdırın
Java 4 -də bir obyekti seriyalaşdırın

Addım 4. İndi obyektiniz seriallaşdırıla bilər, yəni bu kimi bir çıxış axını ilə yazıla bilər:

  • Aşağıdakı kod xətləri MyObject -in (və ya hər hansı bir seriallaşdırıla bilən obyektin) bir fayla və ya diskə necə yazılacağını göstərir.

    sınayın {

    // Məlumat obyektini bir fayla seriyalaşdırın

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

    out.writeObject (obyekt);

    out.close ();

    // Məlumat obyektini bayt massivinə seriyalaşdırın

    ByteArrayOutputStream bos = yeni ByteArrayOutputStream ();

    out = yeni ObjectOutputStream (bos);

    out.writeObject (obyekt);

    out.close ();

    // Seriallaşdırılmış obyektin baytlarını alın

    bayt buf = bos.toByteArray ();

    } tutmaq (IOException e) {

    }

Java -da bir obyekti seriyalaşdırın 5 -ci addım
Java -da bir obyekti seriyalaşdırın 5 -ci addım

Addım 5. Bu kimi oxuya bilərsiniz:

cəhd edin {FileInputStream qapısı = yeni FileInputStream ("name_of_file.sav"); ObjectInputStream oxucu = yeni ObjectInputStream (qapı); MyObject x = yeni MyObject (); x = (MyObject) oxucu.nextObject ();} tutmaq (IOException e) {e.printStackTrace ();}

Java -da bir obyekti seriyalaşdırın 6 -cı addım
Java -da bir obyekti seriyalaşdırın 6 -cı addım
Java -da bir obyekti seriyalaşdırın Addım 7
Java -da bir obyekti seriyalaşdırın Addım 7

Addım 6. Səmərəli işlədiyinə əmin olmaq üçün Java proqramında seriallaşdırılmış obyekt kodunu icra edin (isteğe bağlı)

. Jar Java Faylını işə salın Adım 9
. Jar Java Faylını işə salın Adım 9

Addım 7. Seriallaşdırılmış obyekti Java -da qeyd edin və bağlayın

İpuçları

  • Java SE İnkişaf Kit 6-dakı seriyalaşdırma təkmilləşdirmələri, ObjectStreamClass-dan istifadə edərək seriyalaşdırıla bilməyən sinif obyektlərini idarə etmək üçün hər hansı bir metodu axtarmağa imkan verir.
  • Böyük obyekt ağaclarında oxuma və yazma müddətlərini yaxşılaşdırmaq üçün, məsələn, seriallaşdırma tələb etməyən dəyişənlər üçün "keçici" sözünü istifadə edin. Bu, artıq seriallaşdırma prosesinə lazımsız məlumatları oxumadığınız və yazmadığınız üçün performansı artıracaq.

Xəbərdarlıqlar

  • Java demək olar ki, hər il istehsalçı dəstinin yeni bir versiyası ilə çıxır. Yeni versiyalar, bir Obyekti Java -da necə seriallaşdıra biləcəyinizə dair təkmilləşdirmələr və dəyişiklikləri əhatə edir. Bu səbəbdən istifadə etdiyiniz versiyadakı dəyişiklikləri izləmək vacibdir.
  • Obyektləri seriallaşdırarkən, məlumat axınlarını şifrələyə bilməzsiniz. Bu səbəbdən, lazım olduqda məlumatları qorumaq üçün digər tətbiqlərə və ya ikincil şəbəkə nəqli proseslərinə etibar etməlisiniz.
  • Təsadüfi giriş faylına obyekt yazmağa imkan verən heç bir seçim yoxdur. Bunun əvəzinə, Byte Array giriş çıxış axınlarından obyektləri oxumaq və yazmaq üçün bir yer tutucu kimi istifadə edə bilərsiniz. Bununla birlikdə, bütün obyektin Bayt Array axınında olduğundan əmin olun, yoxsa proses uğursuz olacaq.

Tövsiyə: