JDO vs vertės objektas
JDO yra „Java“ atkaklumo technologija, kurią galima naudoti POJO (paprastų senų „Java“ objektų) kaupimui duomenų bazėse, nereikia suprasti įvairių duomenų saugyklų pagrindų. „Value Object“ (dar žinomas kaip „Data Transfer Object“) yra abstraktus dizaino modelis, pateikiantis paprasto duomenų turėtojo sąvoką duomenų perdavimui iš kelių sluoksnių ir pakopų..
Kas yra JDO?
JDO („Java Data Objects“) teikia mechanizmą, užtikrinantį „Java“ objektų patvarumą ir prieigą prie duomenų bazių. JDO yra labai skaidrus, nes leidžia „Java“ programų kūrėjams pasiekti pagrindinius duomenis nereikia rašyti jokio duomenų bazėms būdingo kodo. JDO gali būti naudojamas keliose pakopose, įskaitant „Java Standard Edition“, žiniatinklio pakopą ir programų serverius. JDO API yra alternatyva kitiems „Java“ objektų, tokių kaip „Serialization“, „JDBC“ („Java DataBase Connectivity“) ir „EJB CMP“ („Enterprise JavaBeans“ architektūros konteinerio valdomi patvarumai) (išlaikyti objektus po programos nutraukimo), išlikimui. JDO naudoja XML ir baitų kodo patobulinimą. Pagrindinis JDO API naudojimo pranašumas yra tas, kad jie gali saugoti duomenis nereikia išmokti naujos užklausos kalbos, tokios kaip SQL (tai priklauso nuo duomenų saugojimo tipo). JDO yra labai lengva naudoti, nes kūrėjai gali sutelkti dėmesį tik į savo domeno objekto modelį. Ne tik tai, JDO pats optimizuoja kodą pagal prieigą prie duomenų. Kadangi JDO API nėra griežtas duomenų saugyklos tipas, „Java“ programų kūrėjai gali naudoti tą pačią sąsają „Java“ objektams saugoti bet kurioje duomenų saugykloje, įskaitant reliacinę duomenų bazę, objektų duomenų bazę ar XML. JDO yra labai nešiojamas, nes nereikia modifikuoti ar pakartotinai kompiliuoti, kad paleistumėte skirtingus tiekėjų diegimus.
Kas yra vertės objektas?
„Value Object“, taip pat žinomas kaip „Data Transfer Objects“ (DTO), yra paprastas abstraktus projektavimo modelis, kuriame nagrinėjamas duomenų talpykla, skirta duomenims laikyti, kad būtų galima perduoti duomenis tarp sluoksnių ir pakopų. Nors tiksliausias šio modelio terminas yra duomenų perdavimo objektas, dėl klaidos pirmojoje „Core J2EE“ versijoje jis buvo įvestas kaip vertės objektas. Nors ši klaida buvo ištaisyta 2-ajame leidime, šis vardas išpopuliarėjo ir vis dar dažnai naudojamas vietoj duomenų perdavimo objekto (tačiau reikia pažymėti, kad teisingas terminas yra duomenų perdavimo objektas). DTO projektavimo schema naudojama subjektų pupelėms, JDBC ir JDO, siekiant pašalinti problemas, atsirandančias dėl izoliacijos ir operacijų įmonių programose. Svarbu pažymėti, kad tai tik paprasti duomenų laikikliai, naudojami duomenims perduoti iš kliento į duomenų bazę, ir jie nesuteikia jokio patvarumo. DTO tarnauja tikslui, kad tradiciniame EJB būtų galima naudoti kaip nuoseklųjį objektą (nes elementų pupelės iki 3.0 nėra serijinės). Atskirame DTO apibrėžtame surinkimo etape visi duomenys, naudojami vaizde, yra gaunami ir sutelkiami prieš išleidžiant valdymą pristatymo sluoksniui..
Kuo skiriasi JDO nuo „Value Object“?
JDO iš tikrųjų yra išlikimo technologija, naudojama „Java“ objektams kaupti duomenų bazėse, kuri kūrėjams suteikia patogumo tvarkant visą diegimo lygio informaciją ir leidžiant kūrėjams sutelkti dėmesį į ne duomenų bazėms skirtą kodavimą. Tačiau vertės objektas parodo abstraktų dizaino modelį (o ne technologiją), kuris suteikia bendrą duomenų laikiklį, vadinamą duomenų perdavimo objektu, kuris gali laikyti duomenis, kad būtų galima perduoti iš kliento į duomenų bazę. JDO suteikia galimybę išlikti duomenų elementams, o „Value Object“ užsiima tik duomenų laikinu saugojimu duomenų perdavimo laikotarpiu. Kitaip tariant, vertės objektas nesuteikia atkaklumo.