Está en la página 1de 6

30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores

Si necesitas un código de programación en específico, escríbeme al formulario de contacto.

Página Principal Códigos JAVA Sentencias SQL Contacto

Anuncios Google

Curso de Java Java Jar Oracle Databas

Curso MySQL Java MySQL Descargar Java

BUSCA MÁS CÓDIGOS DE PROGRAMACIÓN AQUÍ:


Búsqueda personalizada Buscar

PALABRA DE VIDA
Código JAVA: Conectar JAVA con una base de datos usando un Pool
"En el último y gran día de la fiesta, Jesús se puso
en pie y alzó la voz, diciendo: Si alguno tiene sed,
de conexiones
venga a mí y beba.
El que cree en mí, como dice la Escritura, de su
interior correrán ríos de agua viva".

JUAN C.7 V.37-38

SUSCRIBIRSE VÍA E-MAIL

Suscríbete al boletín para recibir lo último en tu


correo electrónico

Escribe tu email... Suscribir

ENTRADAS POPULARES
Este post está orientado a la aplicación e implementación de una clase en Java, que nos permitirá
conectar nuestra aplicación con una Base de datos a través de un Pool de conexiones, e
Código JAVA: Cambiar el color de fondo igualmente se llevará a cabo un test de conexión a través de un pequeño fragmento de código el
de un JFrame y JPanel cual se colocará dentro del método de un botón:

Código JAVA: Guardar registros en una Clase para conectar con nuestra Base de datos (Pool.Java):
base de datos
basicDataSource.setUrl(url);
basicDataSource.setMaxActive(50);
Código JAVA: Agregar datos de un
formulario a una tabla (JTable), y
eliminar una fila y/o registro de una
dataSource = basicDataSource;
tabla (JTable)
}
Código JAVA: Conectar nuestra
aplicación con una Base de datos
}
Código JAVA: Activar y desactivar
botones, checkbox y demás elementos
de un formulario

Código JAVA: Operaciones aritméticas Código para el Test de Conexión:


básicas (Suma, Resta, Multiplicación y
División)
private void btnProbarconexionActionPerformed(java.awt.event.ActionEvent ev
Código JAVA: Borrar datos y/o limpiar
cajas de texto y Combo Box
2 Pool metodospool = new Pool();
Shares

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 1/6
30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores
java.sql.Connection cn = null;
Código JAVA: Ejecutar JFrame en
FullScreen y/o Maximizado
try {
Código JAVA: Modificar registros de una
base de datos

Código JAVA: Poner título a una ventana


(JFrame) Instrucciones y Recomendaciones

1- Primero que todo debemos descargar los archivos .jar que necesitaremos para realizar el
Pool de conexiones, los cuales son: commons-dbcp-1.4.jar, commons-pool-1.6.jar, y mysql-
REDES SOCIALES
connector-java-5.1.16-bin.jar.
Facebook A continuación, los añadimos a las librerías de nuestro proyecto; luego crearemos en nuestro
proyecto, un paquete al cual llamaremos "Metodos", y dentro de este, crearemos una clase la cual
Códigos para Desarr… llamaremos "Pool".
Me gusta esta página 2929 Me g

Twitter
Seguir a @ebastidasuh

Seguir a @codigospd
2- Copia y pega el código resaltado en amarillo, después de la línea de código "package Metodos;" y
sobre la línea de código "public class Pool {", este fragmento de código se utiliza para importar las
Youtube Clases y/o librerías necesarias para poder trabajar con ciertas funcionalidades y métodos de
Software Galaxia nuestra Clase:
28 videos
import javax.sql.DataSource;
Suscribirse 999+ import org.apache.commons.dbcp.BasicDataSource;

3- Ahora copia y pega el código resaltado en azul, dentro de la Clase "public class Pool {}"; es decir,
debe quedar rodeado por las llaves "{}" que limitan dicha Clase.

4- La primera parte de este código resaltado en azul, consiste en crear 1 variable de tipo
DataSource y public, la cual nos servirá para almacenar la conexión que obtengamos; esta variable
será a la que accederemos desde otras Clases para poder realizar las operaciones con nuestra base
de datos. En esta parte del código también se crean 4 variables de tipo String y con la propiedad
public. En la primera variable String, llamada "db", guardamos el nombre de la Base de datos a la
cual nos queremos conectar; en la segunda variable url, guardaremos la ruta de donde se
encuentra ubicada nuestra Base de datos, si nos damos cuenta deberemos emplear la api
"jdbc:mysql", lo cual permite indicar que queremos conectar nuestra aplicación Java con una Base
de datos en MySQL, además debemos consignar la dirección de la máquina que contiene la Base de
datos, en este caso como trabajaremos en una sola máquina colocamos "localhost", en el caso
Códigos para Desarrolladores dado que trabajemos de forma remota debemos reemplazar este valor por la dirección IP (ej.
google.com/+codigosparadesarrollador 192.168.1.2) de la máquina a la cual necesitamos conectarnos, en esta misma variable
esblogspo… concatenamos la variable que instanciamos al principio "+db"; luego la tercera y cuarta variable
"Desarrollando software en comunidad" "user" y "pass", corresponden al usuario y la clave para poder tener acceso a la Base de datos:

Seguir public DataSource dataSource;

public String db = "fundacion";


public String url = "jdbc:mysql://localhost/"+db;
public String user = "root";
public String pass = "123";

5- Lo siguiente es el método Constructor de la Clase "Pool", en este lo que hacemos es llamar al


método inicializaDataSource(), el cual veremos en el siguiente punto.
Cuando llamamos un método desde el Constructor de una Clase, esto permitirá que apenas se
proceda a instanciar dicha Clase desde otra, el método se ejecutará de forma simultánea y/o
instantánea:

public Pool(){

inicializaDataSource();
Eduardo Bastidas UH
google.com/+EduardoBastidasUH }
Analista de Sistemas & Blogger. "Todo tu
corazón pertenece a Dios " :)
6- Ahora en esta tercera parte del código de la Clase Pool, lo que hacemos es crear un método al
Seguir cual llamaremos "inicializaDataSource", este contiene la propiedad public y no devolverá ningún
valor (propiedad void). Este método es el que nos permitirá realizar la conexión con nuestra base
179 seguidores
de datos:

private void inicializaDataSource(){}

CATEGORÍAS PRINCIPALES
7- Proseguiremos a instanciar dentro del método que mencionamos en el punto anterior, un objeto
Base de datos de la Clase "BasicDataSource":
2 JAVA
Shares
BasicDataSource basicDataSource = new BasicDataSource();

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 2/6
30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores
JButton
JFrame 8- En esta parte del código, la cual va dentro del método mencionado en el punto 6, lo que
JTable haremos será utilizar el objeto que instanciamos en el punto anterior, para establecer la conexión
JTextField con nuestra base de datos; esto lo logramos pasando una serie de parámetros que no son más que
MySQL las variables tipo String que creamos al principio de la Clase Pool, además de estas variables
Sentencia SQL también procedemos a cargar la Clase "Driver", que se encuentra ubicada dentro del ".jar" MySQL
Connector que agregamos a nuestras librerías.
Si nos fijamos bien en la última línea de este código:
"basicDataSource.setMaxActive(50)"
Esta es la que nos permite establecer el número máximo de conexiones activas que puede tener
nuestra "piscina", en este caso 50; es decir, que cuando se hayan abierto 50 conexiones no se
permitirán abrir más y si la aplicación trata o solicita abrir una nueva, no se le permitirá, sino que
tendrá que esperar a que una de las conexiones sea liberada para que la pueda usar. Esta es por
así decirlo, la propiedad que identifica este método o forma de conectarnos a una base de datos ya
que al no permitir seguir creando más conexiones, aseguramos la estabilidad del sistema en cuanto
a recursos y optimización de procesos:

basicDataSource.setDriverClassName("org.gjt.mm.mysql.Driver");
basicDataSource.setUsername(user);
basicDataSource.setPassword(pass);
basicDataSource.setUrl(url);
basicDataSource.setMaxActive(50);

9- Por último lo que hacemos es almacenar en nuestra variable tipo DataSource, la conexión a
nuestra base de datos que obtengamos luego de pasar los respectivos parámetros con el objeto de
la Clase "BasicDataSource". Esta línea de código, irá después del código del punto anterior y dentro
del método mencionado en el punto 6:

dataSource = basicDataSource;

10- En cuanto al código para el test de conexión, copia y pega el código resaltado en verde, dentro
del evento y/o método del botón de un formulario de tu proyecto.

11- En las dos primeras líneas de código, lo que hacemos primero es instanciar un objeto de
nuestra Clase Pool.java y luego creamos un objeto tipo Connection al cual le asignamos el valor
"null" para inicializarlo:

Pool metodospool = new Pool();


java.sql.Connection cn = null;

12- De forma siguiente lo que hacemos es crear un bloque "try-catch-finally". Dentro del "try", lo
que haremos será administrar la conexión con nuestra base de datos mediante la variable tipo
Connection que creamos en el punto anterior; dicha conexión la obtenemos de la variable tipo
DataSource de la Clase Pool, utilizando el método ".getConnection();".
Luego usando un condicional "if", verificamos si nuestra conexión no es nula, y en el caso que se
cumpla, mostraremos una ventana con el mensaje "Conectado", en este caso usando el
componente "JOptionPane":

try {

cn=metodospool.dataSource.getConnection();

if(cn!=null){

JOptionPane.showMessageDialog(null, "Conectado");

13- En la parte del "catch", lo que hacemos es capturar el error y/o excepción que se produzca en
caso tal tengamos algún problema en el "try" a la hora de intentar obtener la conexión con nuestra
base de datos, por tal motivo este error es del tipo "SQLException" y se guardará en la variable
"e", dicho error lo procederemos a imprimir por consola:

catch (SQLException e) {

System.out.println(e);

14- En el resto de código, a lo que refiere a la parte del "finally", lo que hacemos es crear un
bloque "try-catch", en el cual dentro del "try", procedemos a cerrar y/o liberar la conexión que
obtuvimos al principio de este código (punto 12), esto lo logramos usando la variable tipo
Connection "cn" y llamando al método ".close();"; en el caso dado que haya una excepción y/o
2 error lo capturaremos en el "catch", esta excepción será también del tipo "SQLException",
Shares
procedemos a almacenarla en la variable "ex" y a imprimirla por consola. Hay que tener muy

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 3/6
30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores
presente que lo que haya dentro del bloque "finally", se ejecutará así sea que se cumpla o ejecute
la parte del "try" o del "catch":

finally{

try {

cn.close();

} catch (SQLException ex) {

System.out.println(ex);

15- Ahora sólo basta con ejecutar tu proyecto y hacer las respectivas pruebas.

16- Si deseas saber cómo realizar un Pool de conexiones para conectar una aplicación
hecha en Java con una Base de datos, usando un entorno gráfico como Netbeans IDE, puedes
visitar el siguiente enlace:

Curso de JAVA: Cómo conectar nuestra aplicación con una Base de datos? (Forma óptima)

Si te fue de gran ayuda esta información, no olvides compartirla con tus amigos.
Si tienes dudas o sugerencias al respecto; puedes dejarnos tus comentarios.

Bendiciones...

Anuncios Google

Curso MySQL Java MySQL

Descargar Java 6 Java JDBC

Comparte este código

2 Share Tweet Share Share


Shares

Email

Contenido relacionado:

Código JAVA: Borrar información de una base de datos


Código JAVA: Cargar JComboBox con registros de una base de
datos
Código JAVA: Crear un JTable con sus celdas y agregarlo a un
formulario
Código JAVA: Evitar y/o eliminar espacios en blanco digitados
en un JTextField
Código JAVA: Cambiar tamaño de la cabecera (Header) del
JTable

Publicadas por Eduardo Bastidas UH


Etiquetas: Análisis y Programación, Base de datos, Códigos, Desarrollo de Software, JAVA

Eduardo Bastidas UH
Analista de Sistemas & Blogger.
Cristiano y Colombiano.
Me motiva mucho el poder compartir día tras día lo que he aprendido y voy aprendiendo en el área de las Tecnologías
de la Información y las Comunicaciones.

2
Shares

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 4/6
30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores

abrir
Secret Offers Expire Soon! Click Here Now To Find!

7 comentarios:

Eduardo Bastidas UH 29 de mayo de 2014, 11:02

PARA TENER EN CUENTA:


La primera línea del bloque de código que explicamos en el punto 8:
basicDataSource.setDriverClassName("org.gjt.mm.mysql.Driver");
Actualmente no es necesaria, así que la puedes obviar (eliminarla), ya que el driver se cargará
automáticamente; sin embargo, si la dejas o la quitas, el código seguirá funcionando.

Responder

Jhefferson Mancera 30 de marzo de 2016, 09:46

que buena pagina

Responder

Respuestas

Eduardo Bastidas UH 1 de abril de 2016, 08:33

Saludos estimado Jhefferson, gracias por visitar nuestro blog.


Me alegra que te haya sido de gran ayuda, no olvides compartir nuestro contenido en tus redes
sociales.

¡CRISTO TE AMA!

Bendiciones...

Responder

Unknown 2 de junio de 2016, 00:17

una duda me sale un error en Pool metodospool = new Pool(); dice que Pool es abstracto y no puede ser
instanciado

Responder

Respuestas

Eduardo Bastidas UH 15 de junio de 2016, 15:14

Saludo estimado visitante.

Revisa tu Clase Pool y verifica que en la línea donde colocas el nombre de la Clase (Pool), no tenga la
palabra "abstract", en el caso de que la tenga se la quitas.

Bendiciones...

Responder

Cristian 12 de octubre de 2016, 02:04

Hola Eduardo primero que todo muchas gracias por compartir con nosotros tus conocimientos han sido de mucha
utilidad para mi.
Tengo un problema con el Import org.apache
me dice que no existe.
A que se debe y que puedo hacer?
Gracias

Responder

Respuestas

Eduardo Bastidas UH 13 de octubre de 2016, 15:47

Saludo Cordial estimado Cristian.

Debes de cargar todas las librerías .jar y no las que están comprimidas en .zip; es decir, debes
proceder a descomprimir las librerías antes de importarlas a tu proyecto.

Tus librerías no deben estar así, ej.:


commons-dcp-1.4.jar.zip

Deben quedar así, ej.:


commons-dcp-1.4.jar

2 Bendiciones...
Shares

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 5/6
30/1/2018 Código JAVA: Conectar JAVA con una base de datos usando un Pool de conexiones | Códigos para Desarrolladores

Responder

Escribe un comentario...

Comentar como: Seleccionar pe

Publicar Vista previa

Entrada más reciente Página Principal Entrada antigua

Suscribirse a: Comentarios de la entrada (Atom)

Con tecnología de Blogger.

2
Shares

https://codigosparadesarrolladores.blogspot.com.co/2014/05/codigo-java-conectar-java-con-una-base-de-datos-usando-un-pool-de-conexiones.html 6/6

También podría gustarte