Qual a diferença de um Dao para um Mapper?

07/07/2017

0

Olá pessoal, aqui estou eu de novo ^^

Eu tenho essa dúvida, quando eu deveria usar um Dao e quado um Mapper resolve melhor o problema? Tem alguma diferença entre os dois?

Tenham todos um bom dia!
Laura Müller

Laura Müller

Responder

Post mais votado

07/07/2017

Mapper é uma foram de traduzir dados, enviados ou recebidos de um banco de dados ou sistema de arquivos. Então, suponha que faça uma consulta via em um banco de dados. Os dados retornados pelo banco não são objetos java definidos em tipos específicos que você espera, então eles chegam como objetos do tipo Object e não String, Long, Date, Double, Integer, ... Assim, você precisa transformar os tipos Object nos tipos que você espera, esse seria o trabalho do mapper.
Outro exemplo, você vai ler um arquivo XML, transformar os dados do arquivo em objetos java seria o trabalho do mapper, como também a operação inversa.

O DAO é um padrão de projetos que tem como responsabilidade separar as classes de persistência e a infraestrutura de acesso ao banco de dados das demais classes/camadas da aplicação. Para que não se misture em uma interface gráfica ou em um controller regras de banco de dados. Na verdade não precisa ser especificamente banco de dados, mas qualquer outro tipo de armazenamento de dados, como arquivos ou mesmo em memória.

Então, você pode usar um mapper para transformar os dados recebidos ou enviados por um DAO a sua estrutura de armazenamento.

Marcio Souza

Marcio Souza
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar