Junior — Middle
შეგიძლიათ ახსნათ Hibernate-ში ობიექტების შექმნიდან ამოღებამდე გადამავალი ეტაპების სერია?
sobes.tech AI
პასუხი AI-სგან
Hibernate-এ, অবজেক্টগুলি তাদের জীবনচক্রে বেশ কয়েকটি অবস্থার মধ্য দিয়ে যায়:
- Transient (অস্থায়ী) — অবজেক্টটি স্মৃতিতে তৈরি হয়, কিন্তু Hibernate সেশন এর সাথে সংযুক্ত নয় এবং ডাটাবেসে সংরক্ষিত নয়।
- Persistent (স্থায়ী) — অবজেক্টটি Hibernate সেশনের সাথে সংযুক্ত এবং মনিটর করা হয়। অবজেক্টে পরিবর্তনগুলি কমিটের সময় ডাটাবেসের সাথে সিঙ্ক্রোনাইজ করা হবে।
- Detached (বিচ্ছিন্ন) — অবজেক্টটি আগে সেশনের সাথে সংযুক্ত ছিল, কিন্তু সেশন বন্ধ হয়ে গেছে বা অবজেক্টটি বিচ্ছিন্ন হয়েছে। পরিবর্তনগুলি মনিটর করা হয় না।
- Removed (অপসারিত) — অবজেক্টটি ডাটাবেস থেকে মুছে ফেলার জন্য চিহ্নিত করা হয়েছে।
উদাহরণস্বরূপ, ক্রম:
- অবজেক্ট তৈরি (Transient)
session.save(obj)কল করুন — অবজেক্টটি Persistent হয়ে যায়- অবজেক্টের সাথে কাজ করুন, পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে সংরক্ষিত হয়
- সেশন বন্ধ করুন — অবজেক্টটি Detached হয়ে যায়
- প্রয়োজনে, অবজেক্টটিকে আবার সেশনের সাথে সংযুক্ত করতে পারেন
session.update(obj)এর মাধ্যমে - মুছে ফেলতে,
session.delete(obj)কল করুন — অবজেক্টটি Removed হয়ে যায়
অতএব, Hibernate অবজেক্টের অবস্থা পরিচালনা করে ডাটাবেসের সাথে সিঙ্ক্রোনাইজেশনের জন্য।