Friday, 26 October 2018

जावा serialization का परिचय (Introduction of Java Serialization)


जावा serialization का परिचय
(Introduction of Java Serialization)

चलिए जावा serialization का मतलब एक उदाहरण लेकर समझते है मान लीजिये कि आप कमरे में बैठ क्र एक मूवी देख रहे हैं और तभी आप का दोस्त आ जाता है तो आप मूवी को वहीँ से देखने के लिए मूवी का pause मोड में करके उससे बात करने चले जाते हैं और जब आप वापस आते हैं तो आपको मूवी वहीँ से देखने को मिलती है जहाँ से आपने मूवी छोड़ी थी | ऐसा ही जावा प्रोग्राम में serialization की मदद से किया जा सकता है जावा के इस feature को serialization कहते हैं

अब मान लीजिये कि अगर ऐसा होता कि आप ने मूवी को pause कर दिया फिर भी मूवी वहीँ शुरू से ही चालू हो रही है तो क्या होता आपका समय बर्बाद होता |

serialization में आप जावा object की state को memory में save करके रखते है जैसे कि आप मूवी को pause करके दुबारा play किया तो मूवी वहीँ से शुरू हो | ऐसे स्तिथि में आपको serialization इस्तेमाल करना होगा |

जब आप किसी object की current state को memory में सेव करते है तो उसे process serialization कहते हैं | Process serialization दो प्रकार कि होती है |

जब आप किसी object की state को सेव करते है तो वो serialization कहलाती है और जब object की state को restore करते है तो वो de-serialization कहलाती है |

Serializable interface

किसी object को serialize करने के लिए आपको serializable interface को implement करना होगा | जिस class को आप ने  serializable किया है सिर्फ उसी class के object serialize हो सकते हैं   


Serialization of Objects

जब आप किसी object को serialize करते हैं तो उस object की एक फाइल create हो जाती है और उस object की current state उस फाइल में store हो जाती है | किसी भी object को serialize करने के लिए आप को ObjectOutputStream class का object create करना होगा | जब आप इस class का object create करते है तो उस object में FileOutputStream class का object argument की तरह पास करना होता है | इसके बाद ObjectOutputStream class के object पर writeObject() method कॉल करते हैं और जिस object को आप serialize करना चाहते हैं उस object को आप इस method में argument की तरह पास करते हैं |
जैसे नीचे दिए गए उदाहरण में दिखाया गया है |



De-serialization of Objects

जब आप किसी object की processing को फिर से शुरू करना या फिर object को de-serialization करना चाहते हैं तो आपको उसकी पुराणी state फाइल को memory में Load करना होगा | किसी object को वापस फाइल से memory में load करने के लिए आपको ObjectInputStream class का object create करना होगा फिर उस object को create करते समय आप इसमें FileInputStream class का object उस ObjectInputStream class  के object में argument की तरह पास करना होगा | इसके बाद आप ObjectInputStream class के object पर readObject() method कॉल करते हैं | यह method आपको उस class का object return करता है इसीलिए आप इसको उसी class के reference variable में cast करके store करवाते हैं |

नीचे दिए गए प्रोग्राम से de-serialization of objects को समझने का प्रयास कीजिये –


अगर आपको हमारी यह पोस्ट अच्छी लगी हो तो प्लीज कमेंट बॉक्स में हमें जरुर बताये और इस पोस्ट को अपने दोस्तों के साथ शेयर करें
धन्यवाद ||




1 comment: