Hola y bienvenidos a esta elección de su curso de IAVA con JDBC.
A continuación vamos a realizar el ejercicio de manejo de personas utilizando la API de JDBC.
Están listos.
Vamos en primer lugar abrimos nuestro IDE de Apache NetBeans.
Vamos a crear un nuevo proyecto.
Damos clic en Feil ni proyecto seleccionamos width Maitén y posteriormente lleva application.
Damos clic en Next y el nombre del proyecto va a ser manejo JDBC
lo vamos a depositar en cursos posteriormente ya va jdbc y lo depositamos en la Lección 3
y con esto ya tenemos la ruta y el nombre del proyecto el nombre del artefacto por default es el nombre
del proyecto Manejo JDBC Group Heydi FMX con GM globalmente Cheung y package.
Vamos a eliminarlo ya que es opcional y damos clic en Finalizar
bien ahora lo que vamos a hacer es modificar nuestro archivo POM para agregar la dependencia del conector
de Mexique así que escribimos dependencias
posteriormente agregamos una dependencia
Group iba a ser Maisí que
el artefacto va a ser maicito el conector
y finalmente agregamos la versión seleccionamos la última versión disponible y con esto ya tenemos nuestro
archivo XML podemos cerrarlo debido a que ya hemos descargado esta librería del proyecto anterior ya
la podemos utilizar sin necesidad de volver a descargarla así que si hacemos clic cambio ya no se va
a descargar de nueva cuenta esta librería sino que únicamente va a realizar la compilación de nuestro
proyecto
así que podemos observar que ya se construyó de manera exitosa el proyecto y vamos a continuar como
siguiente paso ahora lo que vamos a hacer en este proyecto a diferencia del anterior es que vamos a
separar las responsabilidades en cada una de nuestras clases así que por un lado el manejo de la cadena
de conexión y la creación de la conexión a Maisí.
Vamos a separarla en una clase llamada conexión así que vamos a crear una nueva clase sobre sus cachés
damos el derecho new Java class y la clase se va a llamar conexión debemos de tener cuidado de no nombrarla
como en inglés ya que no puede ser el mismo nombre debido a que vamos a utilizar también una clase llamada
conexión así que por ello debe de ser diferente el nombre.
En este caso por ello lee el nombre de la clase en español conexión y lo depositamos en el paquete de
datos y damos fuguen finalizar
y ahora vamos a configurar las variables para realizar la conexión a la base de datos así que escribimos
los atributos que van a ser constantes.
Por ello van a ser de tipo Static y también de tipo final y agregamos la constante JDBC de un bajo o
R.L ya que es la cadena de conexión amáis y el que utilizamos la misma cadena de conexión que utilizamos
en el ejercicio anterior escribimos JDBC dos puntos Maisí el dos puntos Diagonal Diagonal local Jost
podemos omitiera el puerto ya que es el puerto por default.
De lo contrario también podemos establecer los dos puntos 33 06.
Posteriormente el nombre de la base de datos que test y posteriormente los parámetros que vamos a utilizar
y os SSL S. L igual a Fool's el primer parámetro y el segundo parámetro Server son igual a UTE se bien
y esta variable es de tipo string
ahora vamos a declarar las demás variables Static final también va a ser de tipo string y se llama jdbc
y un bajo y user
ya contiene el nombre del usuario para conectarnos a la base de datos.
En este caso el usuario es root y vamos a hacer algo similar para el password así que copiamos y pegamos
la definición de esta variable.
Pero ahora para el password y el valor del password es admin.
Y con eso ya tenemos las variables definidas para realizar la conexión a la base de datos.
Ahora vamos a crear el método GET conexión así que escribimos Public Static
Connection yet conexión
puede llamarse diferente pero en este caso lo estamos nombrando como si estuviéramos utilizando el método
de Driver manager pero puede ser cualquier otro nombre.
Posteriormente este método puede arrojar una acepción de tipo este cual es Epsom así que escribimos
throws SQL exception importamos estas clases del paquete ya va a punto de secuelas y debido a que van
a ser varias clases ponemos punto asterisco para que se importen todas las clases si no se importa de
manera automática entonces escribimos esta sentencia import ya va punto SQL apunta asterisco punto y
coma bien y con esto ya tenemos la definición del método de conexión.
Ahora vamos a regresar una conexión utilizando la clase Driver manager como lo hicimos en el ejercicio
anterior.
Wotton Driver manager punto Jet Connection y pasamos los valores para conectarnos a la base de datos
pasamos el JDBC R.L pero también el usuario el jdbc y user que hemos definido y el JDBC Paz de password
y básicamente con eso estamos creando la conexión a la base de datos.
Ahora también lo que podemos hacer es definir los métodos para cerrar los objetos de tipo Rasul C.T
primero Steinman y conexión ya que son los objetos que vamos a abrir al momento de trabajar con la base
de datos así que escribimos públic Static Veidt y el método se llama Claws pero este método recibe el
argumento de Rasul C.T
la variable la nombramos R.S. y mandamos a llamar R.S. punto Clowes sin embargo este método puede arrojar
una excepción así que vamos a envolverlo en un bloque Raikage y en caso de excepción mandamos a imprimir
esta acepción a la consola así que escribimos X junto a esta actuáis sistema punto para mandar este
mensaje de decepción a la consola y vamos a hacer lo mismo para el objeto de tipo prepararé Steinman
y el objeto de tipo conexión así decidimos Public Static Veidt Kloss aquí podemos utilizar Steinman
o primero Steinem.
Posteriormente vamos a ver la diferencia pero en este caso vamos a utilizar el objeto primero esta ya
que es el más recomendado por ser más eficiente que el objeto Steinem así que utilizamos el tipo Piper
Steinman y la variable las nombramos St TMT
y ponemos ese TMT mandamos a llamar su método Kloss pero también este método puede arrojar una excepción
así que la envolvemos en un bloque troikas y en caso de excepción
mandamos a imprimir la acepción a la consola
y finalmente el método Clowes pero para el objeto conexión
recibimos el argumento de conexión nombramos la variable como con
mandamos a llamar el método Clowes
y en dado caso de decepción hacemos un catch de la acepción e imprimimos la excepción
y con esto ya tenemos todo para nuestra clase de conexión quitamos estas líneas ya que nos están utilizando
bien y con eso estamos separando las responsabilidades en cada una de nuestras clases como siguiente
paso vamos a definir nuestra clase de persona así que sobre esos baches no ya va clase y definimos nuestra
clase de persona
y esta clase la vamos a definir llamado Domaine ya que van a ser nuestras clases de dominio del problema
que estamos resolviendo.
Así quedamos en finalizar
y definimos nuestra clase de persona y en esta clase de persona vamos a definir los atributos que corresponden
a cada una de las columnas de nuestra tabla de personas de base de datos así que definimos el atributo
de tipo entero llamado Heydi persona y todos los atributos van a ser privados después el atributo de
nombre que es de tipo string
después del atributo de apellido
posteriormente el email
y finalmente teléfono y generamos los métodos jet set para cada uno de los atributos.
Podemos generarlos manualmente o podemos apoyarnos en este caso del ídem para agilizar un poco este
código así que en esta línea damos clic derecho y seleccionamos la opción de insert Count y posteriormente
seleccionamos Guedea an Seder seleccionamos todos los atributos ya que necesitamos generar todos los
métodos Iced para cada atributo y con esto ya tenemos los métodos jet set y finalmente vamos a generar
el método string así que damos clic derecho insert Coupet y generamos el método string seleccionando
todos los atributos de nuestra clase y con eso también ya tenemos el método string así que ya tenemos
nuestra clase de dominio persona como siguiente paso vamos a definir nuestra clase de persona.
JDBC esta clase se va a encargar de realizar las operaciones sobre la tabla de base de datos de personas.
Las operaciones tales como leer es decir seleccionar información insertar información modificar o eliminar
información así que sobre el paquete de datos vamos a dar clic derecho Java class y definimos la clase
persona JDBC y damos clic en Finalizar
bien así que vamos a definir esta clase de personas JDBC y esta clase contiene los métodos Select insert
y Blyth para la tabla de persona así que definimos los atributos y como esta clase contiene esas acciones
entonces vamos a definir las sentencias SQL para realizar estas acciones de insert Uday Lilit y Select
así que definimos las siguientes constantes Privat Static final de tipo string llamada SQL SELECT esa
es la primera constante que definimos y escribimos Select Heydi guion bajo persona y cada una de las
columnas nombre apellido email y teléfono.
Posteriormente from y definimos la tabla from persona y esa es la sentencia Cele que vamos a utilizar.
Posteriormente definimos otra constante Static final string pero ahora va a ser SQL
INSERT y va a ser el SQL para realizar un insert en la base de datos así que escribimos INSERT INTO
y el nombre de la tabla persona debido a que el Heydi es una llave primaria que se incrementa de manera
automática por la base de datos no tenemos que especificar la al momento de insertar un nuevo registro
así que únicamente vamos a agregar el nombre apellido email y teléfono podemos escribirlo o en este
caso me estoy apoyando de lo que ya hemos escrito y posteriormente definimos los valores aunque los
valores van a ser parámetros que vamos a adjuntar a esta cadena y como desconocemos estos valores utilizamos
el signo de interrogación para posteriormente sustituirlos.
Así que son cuatro parámetros que vamos a sustituir posteriormente nombre apellido email y teléfono.
Por ello tenemos cuatro parámetros un parámetro para cada columna bien.
Posteriormente definimos la sentencia de update.
Escribimos prevé Static final de tipo string SQL y un bajo.
Update
y definimos la sentencia que va a ser update.
La tabla que vamos a modificar persona y posteriormente definimos los campos que vamos a modificar.
Set nombre similar a la sentencia anterior vamos a definir cada uno de los parámetros para cada columna
que podríamos modificar.
Nombre apellido
email
y teléfono
y especificamos donde se va a hacer esta modificación.
Así que agregamos juer Heydi guion bajo persona igual y también el valor desconocido.
En este momento se va a sustituir al momento de ejecutar esta sentencia y finalmente agregamos la sentencia
para eliminar un registro Radebe Static final string SQL Dión bajo Lilit
y la cadena va a ser la siguiente Lilit from y especificamos.
El nombre de la tabla en este caso persona y ahora especificamos cuál es el registro que se va a eliminar
así que ponemos guion bajo persona y finalmente el parámetro que posteriormente se va a sustituir.
Así que esas son las constantes que vamos a utilizar para realizar cada una de las operaciones.
Ahora vamos a definir el método para modificar un registro.
Definimos el método Public List
y el método se llama Select puede ser en inglés o en español.
No hay ningún problema Selleck o seleccionar importamos.
Estas clases del paquete Domain persona y el paquete IAVA punto y útil y escribimos lo siguiente definimos
una variable de tipo conexión le asignamos el valor de Null posteriormente una variable de tipo Piper
Steinman llamada St MT
también le asignamos el valor de Null una variable de tipo Rasul Zet llamada RC igual a NULL y una variable
de tipo personal llamada persona con el valor de Null.
Importamos estas clases del paquete ya a punto se cuelen y debido a que van a hacer varias clases ponemos
punto asterisco posteriormente obtenemos la conexión a la base de datos con la ayuda de nuestra clase
conexión que hemos definido anteriormente.
Mandamos a llamar el método de conexión y este método puede arrojar una acepción según hemos definido.
Por lo tanto hacemos un Shadowrun with Reixach y en dado caso de error imprimimos la decepción
y continuamos dentro del troikas.
Después de obtener la conexión vamos a inicializar nuestro objeto de tipo Steinman TMT igual con nuestra
variable con mandamos a llamar el método Piper Steinman
y posteriormente especificamos cuál es la sentencia que vamos a utilizar en este caso es la sentencia
SQL bajo Select es la constante que vamos a usar y finalmente ejecutamos el cuerpo y lo asignamos a
nuestra variable R.S
ejecutamos el cuadri y con esto ya tenemos el resultado en nuestra variable de C todo esto es muy similar
a lo que hicimos ya en el ejercicio anterior con el método NEX vamos recorriendo cada uno de los registros
que nos ha devuelto esta sentencia y definimos nuestras variables temporales hoy Villón bajo persona
obtenemos nuestra primera columna sin embargo no solamente podemos especificar el valor de uno ya que
este sería la columna 1 2 3 etc. sino que también podemos especificar el nombre de la columna así que
podemos especificar Heydi guion bajo persona para que sea más claro qué es lo que estamos obteniendo
así que en este caso estamos recuperando el valor de persona y lo estamos asignando a una variable temporal
del mismo nombre.
Posteriormente definimos la variable temporal nombre
de tipo string y por lo tanto usamos el método string y especificamos también el nombre de la columna
en este caso es el campo de nombre y así sucesivamente hacemos lo mismo para apellido
hacemos lo mismo para email
Punto y Coma y hacemos lo mismo para teléfono
así que con eso estamos recuperando cada uno de los valores de la sentencia y finalmente ahora lo que
vamos a hacer es construir un objeto de tipo persona así que ya estamos separando cada una de las responsabilidades
así que usamos nuestro objeto persona la variable que hemos definido y creamos un nuevo objeto de este
tipo y ahora simplemente vamos llenando cada uno de los valores mandamos a llamar los métodos Zet para
cada atributo.
También podríamos agregar un constructor que recibe a cada uno de los valores pero en este caso vamos
a hacerlo de esta forma persona C Nombre especificamos el nombre personan apellido especificamos cebador
de apellido y hacemos lo mismo para email
y teléfono.
Sin embargo esto apenas ha construido un objeto de tipo persona así que lo que nos falta es crear una
lista de objetos de tipo persona así que regresamos aquí a la definición de las variables de nuestro
método y vamos a crear una lista de objetos de tipo Persona
definimos Array List Array List especificamos que van a ser objetos de tipo Persona
importamos esta clase del paquete ya punto y útil y con esto ya podemos agregar cada uno de los objetos
que vayamos recogiendo del resultat pero ahora agregándoles a una lista así que escribimos ahora personas
punto a y el método ADB nos agrega el objeto persona que estamos leyendo y así por cada registro entonces
va a iterar cada registro va a recuperar cada columna va a crear un objeto de tipo Persona y finalmente
lo va a agregar a la lista a la lista de objetos de tipo Persona y agregamos el bloque Inali ya que
recordemos que este bloque siempre se va a ejecutar independientemente que ocurra una excepción o no
y lo que vamos a hacer es cerrar cada uno de nuestros objetos mandamos a llamar el método Claws para
el objeto Rasul C.T
posteriormente para el objeto Steinman y finalmente para el objeto conexión y por último lo que hacemos
es regresar el listado de personas así que ponemos retorné personas
y con eso ya tenemos listo el método elec para los objetos de tipo persona
falta agregar los demás métodos pero de momento vamos a continuar para poder realizar nuestra prueba
y antes de crear los demás métodos primero vamos a verificar que esté funcionando correctamente.
Este método de tipo Select.
Así que vamos a agregar la siguiente clase sobre Sors packages la hemos oído derecho Nioh Java class
y agregamos la clase manejo personas y lo depositamos en el paquete de texto y damos sigue en finalizar
obviamente en esta clase pueden ir agregando todo tipo de comentarios.
Agregar el llamado de esta clase y también los comentarios se crean pertinentes para que quede perfectamente
documentada su clase.
En este caso yo únicamente estoy agregando el código pero todas las explicaciones que estamos diciendo
podrían agregarlas en ciertos puntos para que quede claro el manejo de esta clase bien ahora dentro
de nuestra clase manejo personas agregamos un método main y a diferencia del primer ejercicio que realizamos
va a ser mucho más sencillo esta prueba así que creamos un objeto de tipo Persona JDBC
e instancias.
Esta clase y debido a que ya hicimos la separación de responsabilidades de cada una de las clases basta
con importar esta clase para poder ejecutar el listado de personas así que usamos esta variable personas
personas jdbc y mandamos a llamar el método Select que hemos definido.
Esto nos va a regresar un listado de personas.
Para ello definimos una variable
llamada personas que es una lista de objetos de tipo personal.
Importamos estas flases
y finalmente lo que hacemos es recorrer cada uno de los objetos
definimos la variable que va a recorrer cada elemento la variable persona y le pasamos la colección.
En este caso la colección de personas e imprimimos cada valor debido a que ya hemos definido el método
string en la clase de persona.
Entonces simplemente mandamos a imprimir este objeto persona y con esto es suficiente como podemos observar
ya no tenemos que interactuar directamente con otras clases como la clase de conexión ya que de eso
se encargó la clase de persona jdbc y vamos a ejecutar esta clase.
Guardamos cada uno de los cambios hacemos Clin Anvil de nuestro proyecto para obtener la última versión
de cada una de las clases.
Con eso se ha compilado correctamente y damos clic derecho Run File y podemos observar que sea ejecutado
con éxito.
Esta clase podemos observar persona con el Heydi igual a 1 los valores de Juan Pérez etc. y la persona
2 con los valores de Carla Gómez y los demás valores que podemos observar.
Y si revisamos en la base de datos vamos a databases nos conectamos a la conexión que hemos realizado
de Maykel entramos a tres tablas y ejecutamos nuestra sentencia y podemos observar exactamente los mismos
valores el registro con Heydi 1 Juan Pérez y el Heydi Persona 2 Carla Gomez
así que con esto ya está funcionando correctamente nuestro proyecto de manejo de personas.
Vamos a detener hasta aquí este video y en el siguiente video vamos a terminar de codificar los demás
métodos de INSERT UPDATE y Lilit.
Nos vemos en el siguiente video.
Saludos.