Agenda Telefonica con Base de Datos

@Autor: Prof. Luis Mitre

Esta Practica es una Agenda Telefónica que almacena la información en una base de datos Local en Mysql.

Paso 1. Creamos un nuevo Proyecto java dando Click en File-New-Java Proyect en Eclipse.

Paso 2. Creamos los Paquetes Modelo, Vista y Controlador en el Proyecto creado.

Iniciaremos creando la parte visual de nuestro Proyecto.

Paso 3. Creamos la Clase PanelLogin  dentro de paquete vista en la cual Extenderemos (Heradaremos) dela Clase JPanel para que la clase se comporte como un contenedor quedando:

Paso 4: ahora creamos los componentes que necesitaremos en esta ventana, considerando que en esta ventana incluiremos un nuevo componente para el uso de las contraseñas..

Paso 5: Creamos el Constructor de la clase para empezar a armar nuestra ventana asignando el sistema de ordenamiento a travez de setLayout(null), que indica que usaremos coordenadas:

La ventana se vera Asi, una vez ya corriendo el programa:

agenda1

Paso 6:  Ahora creamos la clase PanelAltas, usando el mismo procedimiento:

  1. Creamos los objetos necesarios
  2. Creamos el constructor y agregamos coordenadas
  3. agregamos los componentes al contenedor.

La ventana se vera de la siguiente manera:

agenda2

Paso 7: Ahora creamos la Clase PanelBajas que al igual que la clase altas realizamos el mismo procedimiento.

nota: En esta clase agregamos un nuevo elemento que es el botón para buscar..

La ventana se vera Asi:

agenda3

Paso 8: Continuamos con la Clase PanelCambios:

La Ventana se Vera Asi:

agenda4

Paso 9: Ahora la clase PanelConsultas:

La ventana se vera asi:

agenda5

Creamos las Clases  Ventana Foto y VentanaNuevoUsuario :

 

Paso 10: Ahora crearemos la Clase VentanaPrincipal que Heredara de la clase JFrame que sera nuestra ventana en donde insertaremos todas las anteriores es decir sera la plataforma donde correra nuestro programa:

Nota: Dentro de esta clase insertamos la imagen de fondo del panel login, dentro de este codigo hay anotaciones donde inicia el codigo para este fin..

Con esto hemos terminado por ahora la Parte Gráfica de nuestro sistema, a partir de este momento si creamos una clase auxiliar y creamos un objeto de la clase VentanaPrincipal miraremos nuestro programa corriendo, cabe mencionar que no tendrá todavía ninguna acción.

Ahora iniciamos con la Parte importante de nuestro Programa las ACCIONES

Paso 11: Para poder trabajar con base de datos sera necesario descargar nuestro conector de base de datos dando clic en el siguiente link:

https://dev.mysql.com/downloads/connector/j/

Elegimos en la pagina la opción de ZIP, una vez descargado el archivo lo abrimos con cualquir programa de compresión de archivo en mi caso uso WINRAR, y dentro de la carpeta: mysql-connector-java- encontraran un archivo con extencion JAR, el cual descomprimimos en cualquier lugar de nuestra maquina de preferencia C:\

Una vez que tengamos el Archivo procederemos a dar Clic Derecho sobre el Proyecto en el que estamos trabajando en eclipse, Seleccionamos la Opcion BUILD PATH – CONFIGURE BUILD PATH se abrira la siguiente ventana:

agenda8

Elegimos la Pestaña Libraries y dentro de esta pestaña damos clic en el botón Add External Jars se abrirá el dialogo para elegir un archivo en el cual buscaremos y elegiremos el archivo del que descomprimimos.  y Damos OK.


Antes de Continuar deberemos crear nuestra base de datos que Llamaremos agenda con las siguientes Tablas:

contactos

basedatos1usuarios
basedatos2

Paso 12: Creamos la Clase Modelo dentro del paquete del mismo nombre que sera la encargada de comunicarnos con la base de datos, y creamos en ella los siguientes objetos:

  1. Connection Conector; que sera el encargado de realizar la conexión a la base de datos:
  2. Statement ejecutador; que es el encargado de realizar la acciones en la base de datos:
  3. ResulSet capturador; es el que recibirá los datos desde la base de datos.

Paso 13: creamos el método conexionBd que recibirá los parámetros usuarios y contraseña de la base de datos a la cual nos vamos a conectar.

Paso 14:  En el constructor de la Clase Modelo mandamos llamar al método ConexionBd  mandando le el usuario y la contraseña de nuestra base de datos, para que se conecte cuando se cree el objeto.

Ahora empezamos a crear todos los métodos que nos ayudaran a trabajar con la Base de Datos

Paso 15: Creamos el método Login el cual nos responderá verdadero o falso dependiendo de si existe o no el usuario..

Paso 16: Ahora creamos el métodoALTAS el cual sera el que reciba la información para mandarla a la base de datos.

Paso 17: Creamos el método Bajas

Paso 18: Creamos el método Buscar :

Paso 19: Creamos el método Cambios:

Paso 20: Creamos el método Consultas:

        NOTA: Este método retorna una objeto de la clase DefaultTableModel que nos permitirá insertar los valores a la base de datos.

Paso 21: Creamos el método BuscarFoto, que es que nos permitirá mostrar la fotografía del contacto cuando le demos clic en la tabla de consultas:

Paso 22:  ahora crearemos los métodos EliminarUsuario y NuevoUsuario 


Antes de continuar con la clase Controlador crearemos una clase llamada CorregirRuta dentro del paquete modelo que quedaría de la siguiente manera:

esta clase se utilizara para corregir la dirección de la imagen ya que Mysql no reconoce las «\» 

Con esto terminamos la Clase modelo ahora solo nos queda dar la acciones a todos los botones del programa para que esta agenda funcione.

Le daremos acciones a los botones por Ventana..

Paso 23: Creamos la clase Controlador dentro del paquete del mismo Nombre en el cual creamos los siguientes objetos:

 

Paso 24:  Crearemos el método AccionesBotones() dentro de la clase Controlador  y agregaremos las acciones de los botones, Empezaremos con LOGIN:

Paso 25:  Le damos ahora acciones a los botones del PanelAltas cabe mencionar que le agregamos acción aun componente JLABEL del tipo MouseListener

Paso 26: Ahora las acciones de los elementos de BAJAS.

Paso 27: Ahora creamos las acciones de CAMBIOS.

Paso 28: Ahora las acciones de Consultas, en esta clase no usaremos ningún botón si no que le diremos al JTextField  y a nuestra JTABLE que hagan las acciones..

Paso 29: Por ultimo las acciones del los MenuItem que son los botones de los Menus:

PASO FINAL

Bueno ya con esto hemos terminado nuestra Agenda Telefónica, solo queda modificar nuestra clase AUXILIAR en el Paquete Controlador. crear el objeto de Controlador y mandar Llamar el método accionesBotones. y obtendremos.

 

 NOTA: Para que se pueda ver la Imagen deberás crear la carpeta Imágenes dentro del proyecto, en la mismo ubicación de las carpetas:

carpeta

@autor Prof. Luis. Mitre

Contador de visitas y estadísticas