JDO vs Value Object
JDO یک فناوری پایداری جاوا است که می تواند برای ذخیره POJO (اشیاء قدیمی جاوای ساده) در پایگاه داده ها بدون نیاز به درک پیاده سازی های زیربنایی ذخایر داده های مختلف استفاده شود. Object Value (همچنین به عنوان Object Transfer Data شناخته می شود) یک الگوی طراحی انتزاعی است که مفهوم یک دارنده داده ساده را به منظور انتقال داده بین لایه ها و لایه های متعدد معرفی می کند.
JDO چیست؟
JDO (اشیاء داده جاوا) مکانیزمی را برای ارائه پایداری به اشیاء جاوا و دسترسی به پایگاه داده ارائه می دهد. JDO بسیار شفاف است زیرا به توسعه دهندگان برنامه های جاوا اجازه می دهد تا بدون نیاز به نوشتن کد خاص برای پایگاه داده به داده های اساسی دسترسی داشته باشند. JDO را می توان در چندین لایه از جمله Java Standard Edition، Web-tier و سرورهای کاربردی استفاده کرد. JDO API جایگزینی برای ماندگاری دیگر (نگهداری اشیاء پس از قطع برنامه) اشیاء جاوا مانند سریال سازی، JDBC (اتصال پایگاه داده جاوا) و EJB CMP (تداوم مدیریت کانتینر معماری Enterprise JavaBeans) است. JDO از XML و بهبود بایت کد استفاده می کند. مزیت اصلی استفاده از JDO API این است که آنها می توانند داده ها را بدون نیاز به یادگیری یک زبان پرس و جو جدید مانند SQL (که به نوع ذخیره سازی داده بستگی دارد) ذخیره کنند. استفاده از JDO بسیار آسان است زیرا توسعه دهندگان می توانند فقط بر روی مدل شی دامنه خود تمرکز کنند. نه تنها این، JDO به تنهایی کد را با توجه به دسترسی به داده ها بهینه می کند. از آنجایی که JDO API در مورد نوع ذخیرهگاه داده سختگیرانه نیست، همان رابط را میتوان توسط توسعهدهندگان برنامههای جاوا برای ذخیره اشیاء جاوا در هر فروشگاه داده از جمله پایگاه داده رابطهای، پایگاه داده شی یا XML استفاده کرد. JDO بسیار قابل حمل است زیرا نیازی به اصلاح یا کامپایل مجدد برای اجرا در پیاده سازی های مختلف فروشنده نیست.
آبژه ارزش چیست؟
Value Object همچنین به عنوان اشیاء انتقال داده (DTO) شناخته می شود، یک الگوی طراحی انتزاعی ساده است که با یک محفظه داده برای نگهداری داده ها به منظور انتقال داده ها بین لایه ها و لایه ها سروکار دارد. اگرچه دقیق ترین عبارت برای این الگو Object Transfer Data است، اما به دلیل اشتباه در نسخه اول Core J2EE به عنوان Object ارزش معرفی شد. اگرچه این اشتباه در ویرایش 2 تصحیح شد، اما این نام رایج شد و همچنان به جای Data Transfer Object زیاد استفاده می شود (اما لازم به ذکر است که اصطلاح صحیح Data Transfer Object است). الگوی طراحی DTO با entity beans، JDBC و JDO برای اصلاح مشکلات رخ داده در رابطه با جداسازی و تراکنشها در برنامههای کاربردی سازمانی استفاده میشود. توجه به این نکته مهم است که اینها فقط دارندگان داده ساده هستند که برای انتقال داده ها بین مشتری و پایگاه داده استفاده می شوند و هیچ نوع ماندگاری را ارائه نمی دهند. DTO به منظور عمل به عنوان اشیاء قابل سریال در EJB سنتی (به عنوان موجودیت لوبیا قبل از 3) عمل می کند.0 قابل سریال سازی نیستند). در یک فاز مونتاژ جداگانه که توسط DTO تعریف شده است، تمام دادههای استفاده شده توسط view قبل از انتشار کنترل در لایه ارائه جمعآوری میشوند.
تفاوت بین JDO و Value Object چیست؟
JDO در واقع یک فناوری تداومی است که برای ذخیره اشیاء جاوا در پایگاههای داده استفاده میشود که با مدیریت تمام جزئیات سطح پیادهسازی و به توسعهدهندگان اجازه میدهد تا روی کدنویسی غیر اختصاصی پایگاه داده تمرکز کنند، راحتی را برای توسعهدهندگان فراهم میکند. اما، Value Object یک الگوی طراحی انتزاعی (نه یک فناوری) را نشان می دهد که یک دارنده داده عمومی به نام Object Transfer Data را ارائه می دهد که می تواند داده ها را به منظور انتقال بین مشتری و پایگاه داده نگهداری کند. JDO امکان تداوم اقلام داده را فراهم می کند، در حالی که Value Object تنها به نگهداری موقت داده ها در طول دوره انتقال داده می پردازد. به عبارت دیگر، Value Object ماندگاری ارائه نمی دهد.