Diferença entre JDO e objeto de valor

Diferença entre JDO e objeto de valor
Diferença entre JDO e objeto de valor

Vídeo: Diferença entre JDO e objeto de valor

Vídeo: Diferença entre JDO e objeto de valor
Vídeo: 14 Arbitrage Pricing Theory – APT 2024, Julho
Anonim

JDO vs Value Object

JDO é uma tecnologia de persistência Java que pode ser usada para armazenar POJO (Plain Old Java Objects) em bancos de dados sem a necessidade de entender as implementações subjacentes de diferentes armazenamentos de dados. Value Object (também conhecido como Data Transfer Object) é um padrão de design abstrato que introduz o conceito de um detentor de dados simples com a finalidade de transferir dados entre várias camadas e camadas.

O que é JDO?

JDO (Java Data Objects) fornece um mecanismo para entregar persistência a objetos Java e acesso ao banco de dados. O JDO é altamente transparente porque permite que os desenvolvedores de aplicativos Java acessem os dados subjacentes sem precisar escrever nenhum código específico para bancos de dados. O JDO pode ser usado em várias camadas, incluindo Java Standard Edition, camada da Web e servidores de aplicativos. A API JDO é uma alternativa para outras persistências (manter objetos após o aborto do programa) de objetos Java como Serialização, JDBC (Java DataBase Connectivity) e EJB CMP (arquitetura JavaBeans Enterprise Container Managed Persistence). JDO usa XML e aprimoramento de bytecode. A principal vantagem de usar a API JDO é que eles podem armazenar dados sem a necessidade de aprender uma nova linguagem de consulta, como SQL (que depende do tipo de armazenamento de dados). JDO é muito fácil de usar, pois os desenvolvedores podem se concentrar apenas em seu modelo de objeto de domínio. Além disso, o JDO otimiza o código por si só de acordo com o acesso aos dados. Como a API JDO não é restrita ao tipo de armazenamento de dados, a mesma interface pode ser usada pelos desenvolvedores de aplicativos Java para armazenar objetos Java em qualquer armazenamento de dados, incluindo banco de dados relacional, banco de dados de objetos ou XML. JDO é altamente portátil porque a modificação ou recompilação não é necessária para rodar em diferentes implementações de fornecedores.

O que é objeto de valor?

Value Object também conhecido como Data transfer Objects (DTO) é um padrão de design abstrato simples que lida com um contêiner de dados para armazenar dados com a finalidade de transferir dados entre camadas e camadas. Embora o termo mais preciso para esse padrão seja Data Transfer Object, devido a um erro na primeira versão do Core J2EE, ele foi introduzido como Value Object. Embora este erro tenha sido corrigido na 2ª edição, este nome tornou-se popular e ainda é muito usado em vez de Data Transfer Object (mas deve-se notar que o termo correto é Data Transfer Object). O padrão de design DTO é usado com beans de entidade, JDBC e JDO para corrigir problemas que ocorrem com relação ao isolamento e transações em aplicativos corporativos. É importante notar que estes são apenas titulares de dados simples usados para transferir dados entre o cliente e o banco de dados e eles não fornecem persistência de qualquer tipo. O DTO serve ao propósito de atuar como objetos Serializable no EJB tradicional (como beans de entidade antes do 3.0 não são serializáveis). Em uma fase de montagem separada definida pelo DTO, todos os dados usados pela visualização são adquiridos e empacotados antes da liberação do controle para a camada de apresentação.

Qual é a diferença entre JDO e Value Object?

JDO é na verdade uma tecnologia de persistência usada para armazenar objetos Java em bancos de dados que oferece conveniência aos desenvolvedores ao lidar com todos os detalhes do nível de implementação e permitir que os desenvolvedores se concentrem em codificação não específica do banco de dados. Mas, o Value Object representa um padrão de design abstrato (não uma tecnologia) que fornece um detentor de dados genérico conhecido como Data Transfer Object que pode armazenar dados com a finalidade de transferência entre o cliente e os bancos de dados. O JDO fornece a facilidade de itens de dados persistentes, enquanto o Value Object trata apenas de manter os dados temporariamente durante o período de transferência de dados. Em outras palavras, Value Object não fornece persistência.

Recomendado: