EL PATRÓN DATA ACCES OBJECT (DAO)

 

Este patrón no solo da un orden a nuestro código separando las funciones de una clase frente a otras acciones, si no que facilita la adaptación o actualización a otros sistemas. Imagínate que tienes un sistema montado en producción con una base de datos MySQL y la quieres cambiar a Mongo, o utilizar Hibernate o a cualquier otro motor de base de datos.

La capa DAO contiene todos los métodos CRUD (create, read, update, delete), por lo general se tiene un DAO para cada tabla en la base de datos, y la implementación se la realiza de la siguiente manera.

Pongamos que tenemos una clase Persona con sus atributos y métodos setters &getters

Luego implementamos la clase DAO para los métodos de manipulación de datos de la clase anterior persona.

Por último se prueba el patrón DAO desde un main.

De este modo podemos separar la lógica del modelo de los metodos de inserción, siendo capaces de separar en todo momento una de las capas para su modificación.

 

Veamos la clase DAO con mas detalle:

Podemos diferenciar claramente los métodos de manipulación, como son la inserción, actualización listado de datos o borrado, de los métodos de conexión.

Tenemos los métodos abrir conexión y cerrar conexión para no tener que repetir en cada método este proceso.

De tal manera que luego realizaremos cada método del CRUD conectándonos y desconectándonos cada vez.

EjemploDAO