TUTORIAL
DE CONEXIÓN DE MYSQL CON JAVA NETBEANS
Paso
1: Creamos
una base de datos en mysql Db_Matricula
#
create database Db_Matricula;
Paso
2: Usamos
la base de datos creada en mysql, para poder crear una tabla llamada
tb_estudiante con 6 atributos
#use
Db_Matricula;
Creamos
la tabla
#create
table tb_estudiante(
#
id INTEGER NOT NULL AUTO_INCREMENT,
#
nombre VARCHAR(20),
#
apellido VARCHAR(20),
#
edad VARCHAR(20),
#
sexo VARCHAR(20),
#
direccion VARCHAR(20),
#
telefono VARCHAR(20),
#
PRIMARY KEY(id));
Paso
3: Ingresamos
a netbeans en donde se creó un nuevo proyecto con el nombre de
Sistema Matriculación
Paso
4: Nos
ubicamos en el proyecto Sistema Matriculación y creamos tres
paquetes Modelo, Vista, Controlador.
Paso
5:
Después
hemos importado la librería MYSQL JBC DRIVER, hemos ingresado al
paquete Controlador para crear la clase cls_conexion, y así poder de
esta manera realizar la conexión de mysql y java mediante el
presente código:
package
Contralador;
import
com.mysql.jdbc.Connection;
import
java.sql.DriverManager;
/**
*
*
@author usuario
*/
public
class Cls_conexion {
Connection
miconexion= null;
public
Connection conexion() {
try
{
Class.forName("com.mysql.jdbc.Driver");
miconexion=(Connection)
DriverManager.getConnection("jdbc:mysql://localhost/db_Estudiante","root","root");}
catch
(Exception e) {
System.out.printf(e.getMessage());}
return
miconexion;
}
}
Paso
6: En
el paquete Modelo creamos la clase cls_Estudiante dentro de la cual
hemos colocado métodos get y set
#
Código
package
Modelo;
public
class Cls_estudiante {
public
String Nombre,
Apellido,Edad,Sexo,Direccion,Telefono;
public
void Cls_estudiante(){
}
public
Cls_estudiante(String Nombre, String Apellido, String Edad, String
Sexo, String Direccion, String Telefono) {
this.Nombre
= Nombre;
this.Apellido
= Apellido;
this.Edad
= Edad;
this.Sexo
= Sexo;
this.Direccion
= Direccion;
this.Telefono
= Telefono;
}
public
String getNombre() {
return
Nombre;
}
public
void setNombre(String Nombre) {
this.Nombre
= Nombre;
}
public
String getApellido() {
return
Apellido;
}
public
void setApellido(String Apellido) {
this.Apellido
= Apellido;
}
public
String getEdad() {
return
Edad;
}
public
void setEdad(String Edad) {
this.Edad
= Edad;
}
public
String getSexo() {
return
Sexo;
}
public
void setSexo(String Sexo) {
this.Sexo
= Sexo;
}
public
String getDireccion() {
return
Direccion;
}
public
void setDireccion(String Direccion) {
this.Direccion
= Direccion;
}
public
String getTelefono() {
return
Telefono;
}
public
void setTelefono(String Telefono) {
this.Telefono
= Telefono;
}
}
Paso
7:
Luego
en el paquete Vista creamos un formulario con el nombre de
Jfrm_Estudiante en el cual hemos realizado un diseño con 6 cajas de
texto una tabla y tres botones:
Paso
8:
Una
vez terminado el diseño hemos nos hemos ubicado en la parte final
del código del Jframer Jfrm_Estuiante y hemos instanciao la clase
cls_conexion
#Código
Cls_conexion
cc=new Cls_conexion();
Connection
cn=cc.conexion();
Paso
9: Luego
damos clic derecho en el botón Guardar y seleccionamos la opción e
acctionPreformed y realizamos el código de inserción de datos
#Código
int
opc= JOptionPane.showConfirmDialog(null,"Desea Guardar los
datos");
if
(opc==JOptionPane.YES_OPTION){
try
{
PreparedStatement
pt= (PreparedStatement) cn.prepareStatement("INSERT INTO
tb_Estudiante (nombre,apellido,edad,sexo,direccion,telefono) VALUES
(?,?,?,?,?,?) ");
String
Nombre= txt_nombre.getText();
String
Apellido=txt_apellido.getText();
String
Edad= cbm_edad.getSelectedItem().toString();
String
Sexo= txt_sexo.getText();
String
Direccion= txt_direccion.getText();
String
Telefono= txt_telefono.getText();
Cls_estudiante
obj=new Cls_estudiante(Nombre, Apellido, Edad, Sexo, Direccion,
Telefono);
pt.setString(1,
obj.getNombre());
pt.setString(2,
obj.getApellido());
pt.setString(3,
obj.getEdad());
pt.setString(4,
obj.getSexo());
pt.setString(5,
obj.getDireccion());
pt.setString(6,
obj.getTelefono());
pt.executeUpdate();
}
catch (Exception e) {
}
}
else{
JOptionPane.showMessageDialog(null,
"No se almaceno los datos");
btn_guardar.setText("Interumpido");
}
Paso10:
Tambien
hemos colocado una linea de código para cambiar el nombre del botón
al momento de cancelar el guardado de datos se coloque el nombre de
interrumpido o cancelado:
#
Codigo
else{
JOptionPane.showMessageDialog(null,
"No se almaceno los datos");
btn_guardar.setText("Interumpido");
}
Paso
11
:
Luego
arrastramos una tabla en el diseño y le asignamos una variable
tb_datos sobre agregamos un menú Item que nos permita guardar y
mostar los datos dentro de la tabla con siguiente código:
public
void mostrardatos(String valor){
DefaultTableModel
model= new DefaultTableModel();
model.addColumn("id");
model.addColumn("nombre");
model.addColumn("apellido");
model.addColumn("edad");
model.addColumn("sexo");
model.addColumn("direccion");
model.addColumn("telefono");
tb_datos.setModel(model);
String
sql="";
if(valor.equals("")){
sql=
"select *from tb_Estudiante ORDER BY apellido ASC";
}else{
sql="select
*from tb_Estudiante where id='"+valor+"'";
}
String
[] datos = new String[7];
try
{
Statement
st=cn.createStatement();
ResultSet
rt=st.executeQuery(sql);
while(rt.next()){
datos[0]
= rt.getString(1);
datos[1]
= rt.getString(2);
datos[2]
= rt.getString(3);
datos[3]
= rt.getString(4);
datos[4]
= rt.getString(5);
datos[5]
= rt.getString(6);
datos[6]
= rt.getString(7);
model.addRow(datos);
}
}
catch (Exception e) {
}
}
Paso
12.
Luego para mostrar datos de la fila seleccionada en la tabla y poder
editar o elimina a traves del popmenu codificamos las siguientes
líneas de código.
public
void Fila(){
int
fila = tb_datos.getSelectedRow();
if
(fila >= 0) {
txt_id.setText((String)
tb_datos.getValueAt(fila, 0).toString());
txt_nombre.setText((String)
tb_datos.getValueAt(fila, 1).toString());
txt_apellido.setText((String)
tb_datos.getValueAt(fila, 2).toString());
txt_sexo.setText((String)
tb_datos.getValueAt(fila, 4).toString());
txt_direccion.setText((String)
tb_datos.getValueAt(fila, 5).toString());
txt_telefono.setText((String)
tb_datos.getValueAt(fila, 6).toString());
}
else {
JOptionPane.showMessageDialog(null,
"FILA NO SELECCIONADA");
}
}
Paso
13.
Luego
agregamos el método limpiar datos para limpiar las cajas de texto
una vez guardados los datos:
void
limpiar() {
txt_id.setText(null);
txt_nombre.setText(null);
txt_apellido.setText(null);
txt_sexo.setText(null);
txt_direccion.setText(null);
txt_telefono.setText(null);
}
Paso
14. : Luego
seleccionamos con un clic derecho en el ítem del popup menu Editar y
seleccionamos la opción de acctionPreformed y realizamos el código
código para actualizar los datos:
private
void btn_editarActionPerformed(java.awt.event.ActionEvent evt) {
try
{
PreparedStatement
pts = (PreparedStatement) cn.prepareStatement("Update
tb_Estudiante set
nombre='"+txt_nombre.getText()+"',apellido='"+txt_apellido.getText()+"',edad='"+cbm_edad.getSelectedItem().toString()+"',sexo='"+txt_sexo.getText()+"',direccion='"+txt_direccion.getText()+"',telefono='"+txt_telefono.getText()+"'
where nombre='"+txt_nombre.getText()+"'");
pts.executeUpdate();
mostrardatos("");
limpiar();
}
catch (Exception e) {
}
}
Paso
15.
Luego seleccionamos con un clic derecho en el ítem del popmenu
Eliminar y seleccionamos la opción acctionPreformed y realizamos el
código para eliminar los datos de la tabla:
boolean
a = true;
int
fila = tb_datos.getSelectedRow();
String
cod = "";
cod
= tb_datos.getValueAt(0, fila).toString();
try
{
PreparedStatement
pts = (PreparedStatement) cn.prepareStatement("Delete from
tb_Estudiante where id='" + cod + "'");
pts.executeUpdate();
MostrardatosID("");
}
catch (Exception e) {
}
Paso
16. Una
vez de realizar los procesos de Guardar, Editar, Eliminar procedemos
a el paquete Vista creamos un formulario con el nombre de
Jfrm_Reportes allí generamos las librerías para generar reportes.
Paso.17.
Luego
procedemos a generar código para que se presenten todos los usuarios
para que realicen reportes con el siguiente código.
try
{
JasperReport
reporte=JasperCompileManager.compileReport("report1.jrxml");
JasperPrint
imprime = JasperFillManager.fillReport(reporte, null, this.cn);
JasperViewer.viewReport(imprime);
}
catch (Exception e) {
System.out.print("No
se Ejecuta");
}
}
private
void cbmCedula1ActionPerformed(java.awt.event.ActionEvent evt) {
//
TODO add your handling code here:
}
}
Paso.18
Luego
procedemos a generar código para que se presente el reporte por el
apellido con siguiente código.
private
void btn_apellidoActionPerformed(java.awt.event.ActionEvent evt) {
String
parametrocedu=txtapellido.getText();
Map
parametro=new HashMap();
parametro.put("apellido",parametrocedu);
try
{
JasperReport
reporte=JasperCompileManager.compileReport("report3.jrxml");
JasperPrint
imprime = JasperFillManager.fillReport(reporte, parametro, this.cn);
JasperViewer.viewReport(imprime);
}
catch (Exception e) {
System.out.print("No
se Ejecuta");
}
}
Paso.19
Luego
procedemos a generar código para que se presente el reporte por el
nombre con siguiente código.
private
void btn_nombre1ActionPerformed(java.awt.event.ActionEvent evt) {
String
parametrocedu=txtnombre.getText();
Map
parametro=new HashMap();
parametro.put("nombre",parametrocedu);
try
{
JasperReport
reporte=JasperCompileManager.compileReport("report2.jrxml");
JasperPrint
imprime = JasperFillManager.fillReport(reporte, parametro, this.cn);
JasperViewer.viewReport(imprime);
}
catch (Exception e) {
System.out.print("No
se Ejecuta");
}
}
.
0 comentarios:
Publicar un comentario