Acá tenemos un problema con nuestro código, la conexión a la base de datos está muy acoplada a esta
clase.
No solamente podríamos tener una consulta a la hace rato en una clase, sino podríamos tener varias
clases que estén utilizando JDC, realizando consultas, operaciones.
Bueno, y no es la idea de estar conectándonos una y otra vez con el Trigger Manager con el que conexión
de forma literal en diferentes puntos de nuestra aplicación.
Por varias razones.
Primero, bueno, es más importante reutilización de código.
Estaríamos duplicando la conexión en varios lugares más más estaríamos copiando parámetros de configuración
como el string de conexión, el Yussef, el password en varias partes.
Y qué pasa si cambia el nombre de la base dato o el nombre del usuario?
El Yussef?
El password.
Ahí tendríamos que estar modificando una y otra vez en varios punto de la aplicación donde lo estamos
utilizando.
Es mucho mejor centralizar y llevar toda esta parte de la conexión a una clase completamente independiente
que la podamos reutilizar mucho mejor.
Otro problema que podríamos tener que si no conectamos con el Draven Manager, vamos a establecer una
conexión nueva en cada lugar y una conexión a la base.
Авто es un recurso equilibren costoso en términos de rendimiento.
Es decir, consume bastante recurso y si abrimos muchas conexiones, vamos a tener un problema de rendimiento.
Entonces es mucho mejor tener una sola conexión para toda nuestra aplicación y sobretodo si nuestra
aplicación de consola o de escritorio está perfecto.
No necesitamos más que una sola conexión a la base de datos y la podamos reutilizar implementando el
patrón singleton.
Ahora, claro, va a depender el tipo de aplicación, porque si es web con varios usuarios con concurrencia,
ahí es probable que necesitemos no solamente una conexión, sino también un pool.
Bueno, quizás una sola conexión podría ser suficiente dependiendo de cantidad usuario conectado, pero
depende el tipo obligación de toda forma.
Sea como sea, tenemos que centralizar esta conexión en un solo punto, en una sola clase.
Entonces nos vamos a ir a la pestaña Proyecto con Alt 1 y vamos a crear un nuevo package.
Vamos a crear acá nuestra clase.
Entonces, con Alt Insert acá vamos a crear el package.
Le podríamos llamar útil, claro, porque es una clase de utilidad.
Y acá vamos a tener la conexión a la asalto.
Lo mismo con Alt Insert.
Vamos a crear una clase.
Le vamos a llamar conexión base datos.
Perfecto, Lleca, vamos a tener algunos atributos estatico.
La idea de implementar un singleton, es decir, una sola conexión que le podamos reutilizar en nuestra
aplicación.
Bueno, los primeros atributos que necesitamos el lettering de conexión, el Yussef Einem y el Passport.
Entonces nos vamos a la clase ejemplo por acá lo tenemos y vamos a copiar.
Seleccionamos, copiamos y regresamos con Control Tuff.
Volvemos a Conexión Base Auto Perfecto y acá pegamos.
Pero tienen que ser atributos del tipo estático bueno y private private static.
Y también el password.
Y por último, el atributo de conexión, que es el más importante el singleton
conexión, conexión también punto y coma.
Vamos a importar con alt enter, importar clase ok.
D. Ya se cuela.
El siguiente paso bueno es crear un método estático Get Connection para establecer la conexión.
Y vamos a preguntar si anulo el connection.
No conectamos con el travian manager y asignamos la conexión.
De lo contrario, si con Echo es distinto, nulo existe.
Devolvemos la conexión.
Public static Connection Документы Instance Lleca preguntamos if if connection es igual a nulo.
Perfecto, entonces conectaron
igual al Driver Manager.
Punto Geet conecta con los parámetros, en este caso Wireless.
El Yussef net y el password.
Perfecto.
Bien IECA en el error no pide manejar excepciones.
Entonces, sobre el error con alt enter relanzado la acepción en la firma del método Construís.
Entonces seleccionamos a Exception la primera opción y listo.
Qué faltaría.
Bueno, devolver el Connection return connection.
Ya lo tenemos.
Se fijan bastante simple los parámetros de conexión, la conexión que estatica singleton.
Acá preguntamos si es igual a null.
No conectamos y la devolvemos, pero puede ser.
Con Hechen ya existe el distinto null.
Simplemente la devuelve.
Hace Semple.
Entonces una sola conexión para toda la aplicación.
Ahora la utilizamos.
Nos vamos a ejemplo Jcsé por acá.
Y esto es todo acá.
Ya no es necesario.
Entonces simplemente lo seleccionamos y lo eliminamos.
Se fijan mucho más limpio.
Esto acá también es tócalos.
Seleccionamos y lo cambiamos por nuestra clase de conexión.
Punto.
Guet instance y levantamos.
Defecan funciona perfecto, entonces cabe que invoquemos el conexión base auto guet instance dentro
de nuestra aplicación va a devolver siempre la misma instancia, pero insisto, va a depender el tipo
de aplicación que estemos desarrollando con una conexión.
Es más que suficiente, pero si ya tenemos una aplicación web con varios usuario conectado con concurrencia,
bueno, hoy necesitamos un poule conexiones.
Pero no se preocupen porque el pull de conexiones por lo general vienen implementado en los servidores
de aplicación y simplemente solicitamos una conexión del pool y listo.
O incluso en los framework como en Spring también lo bembo todo lo que hay conexión auto todo lo que
es el DataSource.
Todo esto ya viene implementado.
Prácticamente no tenemos que hacer nada más que solicitar una conexión.
Pero bien, ese es otro tema que veremos en su momento.
Yo creo que nuestro código está mucho más simple, de hecho y más reutilizable.
Ahora podemos utilizar esta clase en cualquier parte en el punto donde vemos una consulta select o un
insert un de alguna operación al Ayato y está perfecto porque estamos reutilizando la conexión incluso
si queremos cambiar o cambió el Yussef.
Net el password el nombre lo acepto.
Lo modificamos acá en un solo lugar y no en cualquier parte de nuestro código.
Bien, eso por ahora.
Continuamos en la siguiente clase.