Diferența dintre JDO și valoarea obiect

JDO vs Obiect Valoare

JDO este o tehnologie de persistență Java care poate fi utilizată pentru a stoca POJO Obiecte vechi obișnuite Java) în baze de date, fără a fi nevoie să înțelegem implementările care stau la baza diferitelor magazine de date. Obiectul de valoare (cunoscut și sub numele de Obiect de transfer de date) este un model abstract de design care introduce conceptul de suport simplu de date în scopul transferului de date între mai multe straturi și niveluri.

Ce este JDO?

JDO (Java Data Objects) oferă un mecanism pentru a furniza persistență obiectelor Java și acces la baze de date. JDO este foarte transparent, deoarece permite dezvoltatorilor de aplicații Java să acceseze datele care stau la baza acestora fără a fi nevoie să scrieți coduri specifice bazelor de date. JDO poate fi folosit pe mai multe niveluri, inclusiv Java Standard Edition, servere Web și servere de aplicații. JDO API este o alternativă la alte persistențe (păstrarea obiectelor după avortul programului) a obiectelor Java precum Serialization, JDBC (Java DataBase Connectivity) și EJB CMP (Enterprise JavaBeans architecture Container Managed Persistence). JDO utilizează XML și îmbunătățirea bytecode. Principalul avantaj al utilizării JDO API este că aceștia pot stoca date fără a fi nevoie să învețe o nouă limbă de interogare, cum ar fi SQL (care depinde de tipul de stocare a datelor). JDO este foarte ușor de utilizat, deoarece dezvoltatorii se pot concentra doar pe modelul de obiect al domeniului. Nu numai acest lucru, JDO optimizează codul în sine în funcție de accesul la date. Deoarece JDO API nu este strict pe tipul de magazin de date, aceeași interfață poate fi utilizată de către dezvoltatorii de aplicații java pentru a stoca obiecte java în orice magazin de date, inclusiv baza de date relațională, bază de date obiect sau XML. JDO este extrem de portabil, deoarece modificarea sau recompilarea nu este necesară pentru a rula pe diferite implementări ale furnizorului.

Ce este Obiect de valoare?

Obiect de valoare, cunoscut și sub denumirea de Obiect de transfer de date (DTO), este un model simplu de design abstract care se ocupă de un container de date care deține date în scopul transferului de date între straturi și niveluri. Deși termenul cel mai precis pentru acest model este Obiectul de transfer de date, din cauza unei greșeli în prima versiune Core J2EE, a fost introdusă ca Obiect de valoare. Deși această greșeală a fost corectată în ediția a II-a, acest nume a devenit popular și este folosit în continuare puternic în locul obiectului Data Transfer Object (dar trebuie remarcat că termenul corect este Obiectul transferului de date). Modelul de design DTO este utilizat cu fasole entitate, JDBC și JDO pentru a remedia problemele apărute în ceea ce privește izolarea și tranzacțiile în aplicațiile întreprinderii. Este important să rețineți că aceștia sunt doar deținători de date simpli utilizați pentru a transfera date între client și baza de date și nu oferă nici o persistență de orice fel.DTO servește scopului de a acționa ca obiecte Serializabile în EJB tradițional (deoarece fasolea entităților înainte de 3. 0 nu este serializabilă). Într-o fază de asamblare separată, definită de DTO, toate datele utilizate de vizualizare sunt obținute și marshalate înainte de eliberarea controlului pe stratul de prezentare.

Care este diferența dintre JDO și Object Value?

JDO este de fapt o tehnologie de persistență folosită pentru stocarea obiectelor Java în baze de date, ceea ce le conferă dezvoltatorilor posibilitatea de a gestiona toate detaliile nivelului de implementare și de a permite dezvoltatorilor să se concentreze asupra codării specifice bazei de date. Dar Obiectul Valoare reprezintă un model de design abstract (nu o tehnologie) care oferă un suport generic de date cunoscut sub numele de Obiect de transfer de date care poate deține date în scopul transferului între client și baze de date. JDO furnizează facilitatea elementelor de date persistente, în timp ce Obiectul valorii se ocupă numai de păstrarea temporară a datelor în timpul perioadei de transfer de date. Cu alte cuvinte, valoarea Object nu oferă persistență.