Patrones de diseño: DAO

Bienvenidos al último patrón de diseño sobre el que vamos a hablar. Esta vez sobre DAO (Data Access Object).


¿Para qué sirve el DAO?


Para abstraer la lógica de acceso de un conjunto de operaciones, muy utilizado para acceder a bases de datos.


Vamos a ver un ejemplo con una clase Persona

public class Persona { }

public interface PersonaDAO {
	void findAll();
	Persona getById();
}

Creamos la implementación de la interfaz PersonaDAO, más abajo está la especificación de la interfaz.

public class PersonaDAOImpl implements PersonaDAO {
	
	public void findAll() { .... }
	public Persona getById() { ... }
}
public interface PersonaDAO implements DAO<Persona> {
	// Aqui estarian solo los metodos comunes a persona
}

Luego desde la clase principal podemos hacer esto:

PersonaDAO dao = new PersonaDAOImpl();

Pero si tenemos persona, medico, profesor, y mas clases podríamos abstraer mas el DAO.

public class DAO<T> {
	void findAll();
	T getById();
}

De esta forma podemos usar el DAO en muchos tipos de objetos y en cada interfaz añadir algún método si ese tipo de objeto lo requiere.



Bueno, hasta aquí nuestros tutoriales sobre patrones de diseño, recordarte que son tutoriales muy por encima, contando lo básico del patrón, si quieres entrar en detalles te recomendamos buscar más información en libros o Internet.


Nos vemos en la próxima :)


48 vistas

©2020 por Juanma Perez.