Want to create interactive content? It’s easy in Genially!
Semana 8 - DAO
DAV
Created on July 30, 2021
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Puzzle Game
View
Scratch and Win
View
Microlearning: How to Study Better
View
Branching Scenarios Challenge Mobile
View
Branching Scenario Mission: Innovating for the Future
View
Piñata Challenge
View
Teaching Challenge: Transform Your Classroom
Transcript
Data Access Object (DAO)
Patrón de diseño DAO
Es un patrón estructural que permite separar la capa de negocio de la de persistencia.
La idea es esconder todas las complejidades de operaciones como insertar, modificar, eliminar y consultar. Por ejemplo, en una base de datos.
El desacoplamiento que logra permite que un aplicativo pueda ser agnóstico del motor de base de datos que se use como SQL Server, MySQL, Postgres, entre otros.
Esquema DAO. Fuente: https://i.ytimg.com/vi/ui01Li4vqDc/maxresdefault.jpg
Patrón de diseño DAO
Un aplicativo consume interfaces DAO que tiene los métodos para crear leer, actualizar y eliminar un objeto.
La interfaz DAO se implementa en una clase que tiene el código para leer, actualizar y eliminar un objeto en una base de datos específica. Para esto se apoya en las entidades definidas en el aplicativo.
En caso que necesite transferir información en una estructura diferente a las clases definidas, se puede crear una DTO.
forma 2
forma 1
Formas de implementar DAO
Esquema DAO. Fuente: https://jossjack.files.wordpress.com/2014/06/dao.jpg?w=597&h=308
Forma 1 de implementación DAO
Se crea una clase DAO por cada clase de datos. A su vez cada clase DAO debe tener una interfaz DAO para evitar el acoplamiento (dependencia del aplicativo a la clase DAO)
Imágenes extraídas de https://www.programmergirl.com/java-dao-pattern/
Forma 2 de implementación DAO
Se puede usar solo una interfaz con tipo de dato genérico. Normalmente se usa una interfaz por cada Clase DAO.
Imágenes extraídas de https://www.baeldung.com/java-dao-pattern