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

Java

.NET

Engenharia de Software

07/07/2017

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

Curtidas 0

Melhor post

Marcio Souza

Marcio Souza

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.
GOSTEI 1
POSTAR