نحوه سریال سازی یک شی در جاوا: 8 مرحله (همراه با تصاویر)

فهرست مطالب:

نحوه سریال سازی یک شی در جاوا: 8 مرحله (همراه با تصاویر)
نحوه سریال سازی یک شی در جاوا: 8 مرحله (همراه با تصاویر)

تصویری: نحوه سریال سازی یک شی در جاوا: 8 مرحله (همراه با تصاویر)

تصویری: نحوه سریال سازی یک شی در جاوا: 8 مرحله (همراه با تصاویر)
تصویری: مدار الکتریکی 2024, ممکن است
Anonim

وقتی یک شیء را در جاوا سریال می کنید ، داده ها را به جریان های بایت تبدیل می کنید که بعداً دوباره به کپی داده های اصلی تبدیل می شوند. اگر این موضوع گیج کننده به نظر می رسد ، به سریال سازی در اصطلاح زیر فکر کنید. شما روی یک سند کار می کنید و سپس آن را در هارد دیسک خود ذخیره می کنید. شما در حال صحبت کردن ، داده ها را سریال می کنید تا بعداً بتوانید آن نسخه را بازیابی کنید. سریال سازی انتقال داده ها را در شبکه ها بسیار ساده تر و کارآمدتر می کند.

مهم است که قبل از سریال سازی یک شیء ، اصول اولیه جاوا را درک کنید. اگر از زبان های برنامه نویسی مانند پاسکال و نسخه های قدیمی C استفاده کرده اید ، می دانید که بدون سریال سازی شی ، برنامه نویس باید یک فایل متنی ورودی/خروجی جداگانه برای ذخیره و بارگذاری داده ها ایجاد کند. سریال سازی شی در جاوا ایجاد این فایل متنی را برای ذخیره داده ها ، صرفه جویی در زمان و هزینه برنامه نویسی دور می زند. مقاله زیر شامل مراحل سریال سازی یک شی در جاوا است. نمونه کد در این مقاله با استفاده از The Java Developers Almanac 1.4 استفاده شده است.

مراحل

سری کردن یک شی در جاوا مرحله 1
سری کردن یک شی در جاوا مرحله 1

مرحله 1. شی برنامه نویسی جاوا را که نیاز به سریال سازی دارد باز کنید یا از ابتدا یک مورد ایجاد کنید

سری کردن یک شی در جاوا مرحله 2
سری کردن یک شی در جاوا مرحله 2

مرحله 2. شیئی را که می خواهید سریال سازی کنید در جاوا انتخاب کنید

در این مثال ، ما آن شی را "MyObject" می نامیم.

سری کردن یک شی در جاوا مرحله 3
سری کردن یک شی در جاوا مرحله 3

مرحله 3. با ایجاد کلاس MyObject برای پیاده سازی رابط java.io. Serialize ، سریال سازی شی را در جاوا فعال کنید

فقط کافی است خط کد زیر را در ابتدای کد اضافه کنید و جایگزین خط "کلاس عمومی MyObject" شوید. کلاس عمومی MyObject پیاده سازی java.io. Serializable

سری کردن یک شی در جاوا مرحله 4
سری کردن یک شی در جاوا مرحله 4

مرحله 4. اکنون شیء شما قابل سریال سازی است ، به این معنی که می توان آن را توسط یک جریان خروجی نوشت ، مانند این:

  • خطوط کد زیر نحوه نوشتن MyObject (یا هر شیء قابل سریال) بر روی یک فایل یا دیسک را نشان می دهد.

    تلاش كردن{

    // سریال کردن شیء داده به یک فایل

    ObjectOutputStream out = جدید ObjectOutputStream (جدید FileOutputStream ("MyObject.ser")) ؛

    out.writeObject (شی) ؛

    out.close ()؛

    // سریال کردن شیء داده به یک آرایه بایت

    ByteArrayOutputStream bos = جدید ByteArrayOutputStream ()؛

    out = new ObjectOutputStream (bos) ؛

    out.writeObject (شی) ؛

    out.close ()؛

    // بایت های شیء سریال شده را دریافت کنید

    بایت buf = bos.toByteArray ()؛

    } catch (IOException e) {

    }

سری کردن یک شی در جاوا مرحله 5
سری کردن یک شی در جاوا مرحله 5

مرحله 5. این را می توان به این شکل خواند:

سعی کنید {FileInputStream door = new FileInputStream ("name_of_file.sav") ؛ ObjectInputStream reader = جدید ObjectInputStream (درب) ؛ MyObject x = MyObject جدید ()؛ x = (MyObject) reader.nextObject ()؛} catch (IOException e) {e.printStackTrace ()؛}

سری کردن یک شی در جاوا مرحله 6
سری کردن یک شی در جاوا مرحله 6
سری کردن یک شی در جاوا مرحله 7
سری کردن یک شی در جاوا مرحله 7

مرحله 6. کد شیء سریال شده را در برنامه جاوا اجرا کنید تا مطمئن شوید که به طور موثر کار می کند (اختیاری)

مرحله. Jar Java Java را اجرا کنید مرحله 9
مرحله. Jar Java Java را اجرا کنید مرحله 9

مرحله 7. شیء سریال شده را در جاوا ذخیره و ببندید

نکات

  • پیشرفتهای سریال سازی در Java SE Development Kit 6 به شما امکان می دهد از ObjectStreamClass برای یافتن هر روشی برای مدیریت اشیاء کلاس غیر قابل سریال استفاده کنید.
  • برای بهبود زمان خواندن و نوشتن در درختان شیء بزرگ ، از کلمه کلیدی "گذرا" برای مثال متغیرهایی که نیازی به سریال ندارند استفاده کنید. این کار باعث افزایش عملکرد شما می شود زیرا دیگر اطلاعات غیر ضروری را در فرایند سریال سازی نمی خوانید و نمی نویسید.

هشدارها

  • جاوا نسخه جدیدی از کیت توسعه دهندگان خود را تقریباً سالانه ارائه می دهد. نسخه های جدید شامل ارتقاء و تغییرات در نحوه سریال سازی یک شی در جاوا است. بنابراین ، مهم است که تغییرات نسخه مورد استفاده را کنترل کنید.
  • هنگام سریال سازی اشیاء ، نمی توانید جریان داده ها را رمزگذاری کنید. بنابراین ، برای محافظت از داده ها ، در صورت لزوم ، باید به برنامه های دیگر یا فرآیندهای انتقال شبکه ثانویه تکیه کنید.
  • در حال حاضر هیچ گزینه ای وجود ندارد که به شما اجازه دهد اشیاء را در یک فایل دسترسی تصادفی بنویسید. در عوض ، می توانید از جریانهای ورودی Byte Array به عنوان یک مکان نگهدارنده برای خواندن و نوشتن اشیاء استفاده کنید. با این حال ، مطمئن شوید که کل شی در جریان آرایه Byte قرار دارد ، در غیر این صورت فرآیند شکست می خورد.

توصیه شده: