Differenza tra JDO e Value Object

Differenza tra JDO e Value Object
Differenza tra JDO e Value Object

Video: Differenza tra JDO e Value Object

Video: Differenza tra JDO e Value Object
Video: Teoria dei Grafi (Generalità, definizione, rappresentazione) 2024, Novembre
Anonim

JDO vs Value Object

JDO è una tecnologia di persistenza Java che può essere utilizzata per archiviare POJO (Plain Old Java Objects) nei database senza la necessità di comprendere le implementazioni sottostanti di diversi archivi di dati. Value Object (noto anche come Data Transfer Object) è un modello di progettazione astratto che introduce il concetto di semplice titolare dei dati allo scopo di trasferire i dati tra più livelli e livelli.

Cos'è JDO?

JDO (Java Data Objects) fornisce un meccanismo per fornire persistenza agli oggetti Java e all'accesso al database. JDO è altamente trasparente perché consente agli sviluppatori di applicazioni Java di accedere ai dati sottostanti senza dover scrivere codice specifico per i database. JDO può essere utilizzato su diversi livelli, inclusi Java Standard Edition, livello Web e server delle applicazioni. L'API JDO è un' alternativa ad altre persistenza (conservazione degli oggetti dopo l'interruzione del programma) di oggetti Java come Serialization, JDBC (Java DataBase Connectivity) ed EJB CMP (Enterprise JavaBeans Architecture Container Managed Persistence). JDO utilizza XML e il miglioramento del bytecode. Il vantaggio principale dell'utilizzo dell'API JDO è che possono archiviare i dati senza la necessità di apprendere un nuovo linguaggio di query come SQL (che dipende dal tipo di archiviazione dei dati). JDO è molto facile da usare poiché gli sviluppatori possono concentrarsi solo sul loro modello a oggetti di dominio. Non solo, JDO ottimizza il codice da solo in base all'accesso ai dati. Poiché l'API JDO non è rigida sul tipo di archivio dati, la stessa interfaccia può essere utilizzata dagli sviluppatori di applicazioni java per archiviare oggetti java in qualsiasi archivio dati, inclusi database relazionali, database di oggetti o XML. JDO è altamente portabile perché la modifica o la ricompilazione non è necessaria per l'esecuzione su implementazioni di fornitori diversi.

Cos'è l'oggetto valore?

L'oggetto valore noto anche come Data transfer Objects (DTO) è un semplice modello di progettazione astratto che si occupa di un contenitore di dati per contenere dati allo scopo di trasferire dati tra livelli e livelli. Sebbene il termine più accurato per questo modello sia Data Transfer Object, a causa di un errore nella prima versione di Core J2EE è stato introdotto come Value Object. Sebbene questo errore sia stato corretto nella 2a edizione, questo nome è diventato popolare ed è ancora ampiamente utilizzato al posto di Data Transfer Object (ma va notato che il termine corretto è Data Transfer Object). Il modello di progettazione DTO viene utilizzato con bean di entità, JDBC e JDO per correggere i problemi che si verificano in relazione all'isolamento e alle transazioni nelle applicazioni aziendali. È importante notare che si tratta solo di semplici titolari di dati utilizzati per trasferire i dati tra il client e il database e non forniscono persistenza di alcun tipo. DTO ha lo scopo di agire come oggetti serializzabili nell'EJB tradizionale (come bean di entità prima di 3.0 non sono serializzabili). In una fase di assemblaggio separata definita da DTO, tutti i dati utilizzati dalla vista vengono acquisiti e sottoposti a marshalling prima del rilascio del controllo al livello di presentazione.

Qual è la differenza tra JDO e Value Object?

JDO è in re altà una tecnologia di persistenza utilizzata per archiviare oggetti Java nei database che offre comodità agli sviluppatori gestendo tutti i dettagli del livello di implementazione e consentendo agli sviluppatori di concentrarsi sulla codifica non specifica del database. Tuttavia, l'oggetto valore rappresenta un modello di progettazione astratto (non una tecnologia) che fornisce un titolare di dati generico noto come oggetto di trasferimento dati che può contenere dati allo scopo di trasferirli tra client e database. JDO offre la possibilità di mantenere gli elementi di dati, mentre Value Object si occupa solo di conservare i dati temporaneamente durante il periodo di trasferimento dei dati. In altre parole, Value Object non fornisce persistenza.

Consigliato: