Conexión Mysql - Java

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 26

CONEXIÓN MYSQL - JAVA

• Conocimientos previos:
• Conocimientos Básicos en Java
• Conocimientos de Bases de Datos en MySQL

• Herramientas:
• JDK
• IDE para Java (En el curso utilizamos Netbeans)
• MySQL Servidor
• MySQL Cliente (Para el curso workbench)
• JDBC
Java Database Connectivity, es una API que permite la ejecución de operaciones sobre
bases de datos desde el lenguaje de programación Java.
Para realizar una conexión de Java a una base de datos en MySQL necesitamos un
conector el cual vamos a descargar desde:
https://dev.mysql.com/downloads/connector/j/
Dentro de la descargar encontraremos múltiples archivos, el mas significativo es el
correspondiente a la librería denominada mysql-connector-java-version-bin.jar
Ya teniendo el conector lo agregamos al proyecto, damos clic derecho en la carpeta
Libraries, seleccionamos «Agregar archivo JAR/Carpeta…«. Nos mostrara un cuadro para
buscar la librería, la seleccionamos y presionamos abrir.
Paquete java.sql

JDBC ofrece el paquete java.sql, en el que existen clases muy útiles para trabajar con
bases de datos.
Clase Descripción

DriverManager Para cargar un driver

Connection Para establecer conexiones con las bases de datos

Statement Para ejecutar sentencias SQL y enviarlas a las BBDD

La ruta de ejecución está predeterminada en el


PreparedStatement servidor de base de datos que le permite ser
ejecutado varias veces

ResultSet Para almacenar el resultado de la consulta


CRUD

¿Qué es un CRUD?
• CRUD es el acrónimo de Create, Read, Update and Delete (Crear, Leer,
Actualizar y Borrar), que se usa para referirse a las funciones básicas en
bases de datos.
• Para este curso se implementara un pequeño sistema CRUD.
CONEXIÓN JAVA A MYSQL
• Para realizar una conexión de base de datos MySql y Java debemos tener los
siguientes datos:
• Dirección IP del servidor.
• Usuario de MySql.
• Contraseña de MySql.
• Puerto de MySql.
• Nombre de la Base de Datos.
BASE DE DATOS PARA LA PRACTICA

Para efectos de la practica se trabajara con una base de datos llamada


bd_prueba, la base de datos contiene una tabla llamada información la cual
almacenara información de un usuario tal como identificador, nombre, telefono,
dirección y descripción.
La base de datos contiene también procedimientos para realizar las
operaciones de insertar, modificar, eliminar y consultar datos.
ESTRUCTURA DE LA TABLA INFORMACIÓN
create table informacion(
id_persona int not null AUTO_INCREMENT,
nombre varchar(30) not null,
telefono varchar(10) not null,
direccion VARCHAR(100) NOT NULL,
descripcion varchar(100) not null,
PRIMARY KEY (id_persona)

);
PROCEDIMIENTOS ALMACENADOS
• #BUSCAR TODOS LOS USUARIOS
• CREATE PROCEDURE `buscar_usuarios`()
• SELECT * FROM informacion

• #BUSCAR UN USUARIO EN PARTICULAR


• CREATE PROCEDURE `buscar_usuario`(IN buscar INT(5) )
• SELECT * FROM informacion WHERE id_persona = buscar;
• #modificar la informacon de un usuario.
• CREATE PROCEDURE `modificarr`(IN buscar INT(5), IN nombre varchar(30), IN
telelfono varchar(10), IN direccion varchar (100), IN descripcion varchar (100))
• UPDATE `informacion` SET
`nombre`=nombre,`telefono`=telefono,`direccion`=direccion,`descripcion`=descripcio
n WHERE id_persona = buscar;

• #eliminar UN USUARIO EN PARTICULAR


• CREATE PROCEDURE `eliminar_usuario`(IN buscar INT(5) )
• DELETE FROM informacion WHERE id_persona = buscar;

• #registrar información de un usuario


• CREATE PROCEDURE `registrar_usuario`(IN buscar INT(5), IN nombre varchar(30), IN
telelfono varchar(10), IN direccion varchar (100), IN dESCRIPCION varchar (100) )
• INSERT INTO informacion(`nombre`,`telefono`,`direccion`,`descripcion`)
VALUES(nombre,telefono,direccion,descripcion);
PATRÓN DE DISEÑO MVC

Es un patrón de diseño de software para programación que propone separar


el código de los programas por sus diferentes responsabilidades.
• Modelo
• Vista
• Controlador
Modelo
• Es la representación de la información con la cual el sistema opera, gestiona todos los
accesos a dicha información, tanto consultas como actualizaciones (lógica de negocio).

Vista
• Presenta el ‘modelo’ (información y lógica de negocio) en un formato adecuado para
interactuar (interfaz de usuario).

Controlador
• Responde a eventos (acciones del usuario) e invoca peticiones al ‘modelo’ cuando se
hace alguna solicitud sobre la información. También puede enviar comandos a su ‘vista’
asociada si se solicita, por lo tanto se podría decir que el ‘controlador’ hace de
intermediario entre la ‘vista’ y el ‘modelo’.
VENTAJAS DE MVC Y POO
• Reusabilidad
• Facilidad de manejo
• Portabilidad
• Rapidez de desarrollo
• Facilita el mantenimiento
• Permite el escalamiento de la aplicación
• Separación de responsabilidades
• Más fácil de entender porque se utilizan abstracciones más cercanas a la
realidad.
ABRIR CONEXIÓN JAVA MYSQL
• creamos la clase que va a conectar nuestra aplicación con MySQL, yendo al paquete servicios, vamos
a crear una nueva clase llamada Conexion.java con el siguiente código:

Esta clase tendrá un método estático llamado getConexion(), el cual va a devolvernos una
instancia de conexión y de no haber una previa va crear una.
Esto gracias al método getConnection(), el cuál recibirá como primer parámetro el tipo de
base de datos (MySQL) y la ubicación de la base de datos, en mi caso, como estoy trabajando
en un entorno local, será localhost. El segundo parámetro es el usuario y el tercero la
contraseña.
A su vez este método puede disparar dos excepciones, SQLException, si surge algún error, por
ejemplo que no se pueda conectar a la base de datos, y ClassNotFoundException, en caso de
por último el método, también estático, Cerrar_Conexion (), que como su nombre lo
indica, cerrará la conexión al momento que terminemos de trabajar con la base de datos, en
caso de que haya alguna conexión abierta.
Referencia a la librería de conexión con mysql

Datos para realizar la conexión con mysql

Objeto de tipo
Connection el cual
almacenara la
conexión con
mysql

Método para realizar la conexión con MySql la cual se establecerá a


traves del método “getConnection” de la clase la librería de MySql el
método regresara un objeto con la conexión a base de datos el cual
utilizaremos para realizar las operaciones en la base de datos.
• Para que el código que acabamos de agregar funcione debemos
añadir el JDBC que descargamos a nuestro proyecto java, hacemos lo
siguiente
Cuadro de búsqueda APLICACIÓN EN JAVA

Lista donde se desplegaran las consultas de En este panel se realizaran las operaciones de
información a lavase de datos. agregar, modificar y eliminar registros de la base
de datos.
MÉTODO PARA CONSULTAR INFORMACIÓN DE LA BASE DE DATOS
Asigna a la tabla que desplegar los resultados un objeto de
tipo DefaultTableModel con el cual desplegaremos los
resultados

CÓDIGO: Definición de los objetos que utilizaremos para realizar la


consultas a la base de datos:

Conn: objeto de la clase Conexión() con el cual abriremos la


conexión a base de datos.

Con: objeto que contendrá la conexión a la base de datos


que retorna la clase Conexión().

Utilizaremos también un objeto Resultset y PreparedStatement y un objeto String en el cual


escribiremos la sentencia MySql:

ps: con este objeto se preparan las sentencias para la consultar en la base de datos y con el
método “excecuteQuery()” se ejecuta en el gestor la consulta.

rs: se almacenara los resultados de la consulta y obtendremos los datos para desplegarlos en
pantalla.
SQL: es un objeto tipo String el cual contendrá el script de la cosulta en este caso llamara al
procedimiento almacenado para consultar la información de la tabla información.
Se obtienen los resultados de la
consulta y son almacenados en
el objeto rsMd.

Se asigna el modelo de columnas para la


lista, en base a las columnas obtenidas de
la tabla a la cual se le realizo la consulta.

El arreglo anchos contiene el ancho que


ocupara cada columna en la tabla.

Con la estrctura while iremos obteniendo cada resultado


almacenado en el objeto rs fila por fila y almacenándolo en
un array fila de tipo object al final lo agregaremos al
modelo con el cual llenaremos la lista.

Por último se cierra la conexión a la base de datos.


MÉTODO PARA ELIMINAR INFORMACIÓN DE LA BASE DE DATOS
• El principio del método es similar al del método anterior utilizando los mismos
objetos.

La estructura es similar al método de búsqueda con la diferencia de que ahora solo se llama al
procedimiento almacenado llamado eliminar, como el procedimiento almacenado requiere un parámetro
para poder eliminar un registro, el campo id persona lo obtenemos al seleccionar un registro de la lista.
MÉTODO PARA MODIFICAR INFORMACIÓN
En el método de modificación de información los datos se obtienen de la caja de texto donde todos son editados a
excepción de el Id persona debido a que es llave primaria en la tabla, una vez capturados los datos de los
textbox en la variable Sql escribimos la Query el prendimiento almacenado con los datos de del textbox y
ejecutamos la Query con el objeto ps, en ese caso no necesitamos un objeto Resultset debido a que no estamos
consultando solo estamos enviando una instrucción al gestor de base de datos, al final los textbox se limpian y los
datos de la lista se refrescan.
MÉTODO PARA GUARDAR INFORMACIÓN
• De igual forma al método de modificar el método de guardar también utiliza los valores de las
cajas de texto excepto el id persona debido a que este se genera automáticamente al momento
de crear el registro, después se concatena el valor de las cajas de texto en la Query y se ejecuta
con el objeto ps, luego se limpian la caja de texto y se refresca el contenido de la lista.
REFERENCIAS:

• https://codigosdeprogramacion.com/cursos/?lesson=1-introduccion-a-java-y-
mysql
• https://www.arquitecturajava.com/jdbc-prepared-statement-y-su-manejo/
• https://fernando-gaitan.com.ar/conectar-java-con-mysql-en-netbeans/

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy