Estructura del proyecto
• Crear un proyecto java swing con el nombre de CrudEmpleado2.
• Luego crear 4 paquetes (conexión,dao, modelo y vista).
• No olvidar agregar el driver de conexión.
Estructura final.
• Crear un proyecto java swing con el nombre de CrudEmpleado2.
• Luego crear 4 paquetes (conexión,dao, modelo y vista).
• No olvidar agregar el driver de conexión.
Estructura final.
Creación de la base de datos.
create database dbplanilla; use dbplanilla; create table empleado ( codEmpleado int primary key auto_increment nombre varchar(50) not null, edad int not null, sueldo double not null ); insert into empleado values(1,'Pedro',25,400.00); insert into empleado values(2,'Juan',29,800.00); insert into empleado values(3,'Karla',25,600.00); select * from empleado; /*drop table empleado;*/
Creación de la clase Conexión.
package com.conexion;
import java.sql.*;
/**
* Nombre de la clase: Conexion
* Version: 1.0
* Fecha: 31-07-2017
* Copyright: ITCA-FEPADE
* @author: VA
*/
public class Conexion
{
private Connection con;
public Connection getCon() {
return con;
}
public void setCon(Connection con) {
this.con = con;
}
public void conectar() throws Exception
{
try
{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/dbplanilla?user=root&password=");
}
catch (Exception e)
{
throw e;
}
}
public void desconectar() throws Exception
{
try
{
if(con!=null)
{
if (con.isClosed()==false)
{
con.close();
}
}
}
catch (Exception e)
{
throw e;
}
}
}
Creación de la clase empleado.
package com.modelo;
/**
* Nombre de la clase: Empleado
* Version: 1.0
* Fecha: 31-07-2017
* Copyright: ITCA-FEPADE
* @author: VA
*/
public class Empleado
{
private int codEmpleado;
private String nombre;
private int edad;
private double sueldo;
public Empleado() {
}
public int getCodEmpleado() {
return codEmpleado;
}
public void setCodEmpleado(int codEmpleado) {
this.codEmpleado = codEmpleado;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public int getEdad() {
return edad;
}
public void setEdad(int edad) {
this.edad = edad;
}
public double getSueldo() {
return sueldo;
}
public void setSueldo(double sueldo) {
this.sueldo = sueldo;
}
}
Creación de clase DaoEmpleado.
package com.dao;
import com.conexion.Conexion;
import com.modelo.Empleado;
import java.sql.*;
import java.util.*;
/**
* Nombre de la clase: DaoEmpleado
* Version: 1.0
* Fecha: 31-07-2017
* Copyright: ITCA-FEPADE
* @author: VA
*/
public class DaoEmpleado extends Conexion
{
public void insertarEmpleado (Empleado emp) throws Exception
{
try
{
this.conectar();
String sql="insert into empleado(nombre,edad,sueldo) values(?,?,?)";
PreparedStatement pre=this.getCon().prepareStatement(sql);
pre.setString(1,emp.getNombre());
pre.setInt(2, emp.getEdad());
pre.setDouble(3, emp.getSueldo());
pre.executeUpdate();
}
catch (Exception e)
{
throw e;
}
finally
{
this.desconectar();
}
}
public List mostrarEmpleado() throws Exception
{
List listaempleados=new ArrayList();
ResultSet res;
try
{
this.conectar();
String sql="select * from empleado";
PreparedStatement pre=this.getCon().prepareStatement(sql);
res=pre.executeQuery();
while (res.next())
{
Empleado emp=new Empleado();
emp.setCodEmpleado(res.getInt("codEmpleado"));
emp.setNombre(res.getString("nombre"));
emp.setEdad(res.getInt("edad"));
emp.setSueldo(res.getDouble("sueldo"));
listaempleados.add(emp);
}
}
catch (Exception e)
{
throw e;
}
finally
{
this.desconectar();
}
return listaempleados;
}
public void modificarEmpleado (Empleado emp) throws Exception
{
try
{
this.conectar();
String sql="update empleado set nombre=?, edad=?, sueldo=? where codEmpleado=?";
PreparedStatement pre=this.getCon().prepareStatement(sql);
pre.setString(1, emp.getNombre());
pre.setInt(2, emp.getEdad());
pre.setDouble(3, emp.getSueldo());
pre.setInt(4, emp.getCodEmpleado());
pre.executeUpdate();
}
catch (Exception e)
{
throw e;
}
finally
{
this.desconectar();
}
}
public void eliminarEmpleado (Empleado emp) throws Exception
{
try
{
this.conectar();
String sql="delete from empleado where codEmpleado=?";
PreparedStatement pre=this.getCon().prepareStatement(sql);
pre.setInt(1, emp.getCodEmpleado());
pre.executeUpdate();
}
catch (Exception e)
{
throw e;
}
finally
{
this.desconectar();
}
}
}
Agregar un formulario FrmEmpleado.
Código en el formulario.
package com.vista;
import com.dao.DaoEmpleado;
import com.modelo.Empleado;
import java.text.DecimalFormat;
import java.util.*;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
/**
* Nombre de la clase: FrmEmpleado
* Version: 1.0
* Fecha: 31-07-2017
* Copyright: ITCA-FEPADE
* @author: VA
*/
public class FrmEmpleado extends javax.swing.JFrame {
/**
* Creates new form FrmEmpleado
*/
public FrmEmpleado() {
initComponents();
tablaE();
}
Empleado em=new Empleado();
DaoEmpleado daoe=new DaoEmpleado();
private void btnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {
limpiar();
}
private void tbEmpleadoMouseClicked(java.awt.event.MouseEvent evt) {
llenarTabla();
}
private void btnInsertarActionPerformed(java.awt.event.ActionEvent evt) {
try
{
Insertar();
} catch (Exception e)
{
e.printStackTrace();
}
tablaE();
}
private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) {
modificar();
}
private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) {
eliminar();
}
public void tablaE()
{
String [] columnas={"Codigo Empleado","Nombre", "Edad", "Sueldo"};
Object[] obj=new Object[4];
DefaultTableModel tabla=new DefaultTableModel(null, columnas);
List ls;
DecimalFormat df=new DecimalFormat("#,###.00");
try
{
ls=daoe.mostrarEmpleado();
for(int i=0; i < ls.size(); i++)
{
em=(Empleado)ls.get(i);
obj[0]=em.getCodEmpleado();
obj[1]=em.getNombre();
obj[2]=em.getEdad();
obj[3]=df.format(em.getSueldo());
tabla.addRow(obj);
}
ls=daoe.mostrarEmpleado();
this.tbEmpleado.setModel(tabla);
}
catch (Exception e)
{
JOptionPane.showMessageDialog(this, "Error al mostrar los datos"+ e.toString());
}
}
public void Insertar() throws Exception
{
em.setCodEmpleado(ICONIFIED);
em.setNombre(this.txtNombre.getText());
em.setEdad(Integer.parseInt(this.txtEdad.getText()));
em.setSueldo(Double.parseDouble(this.txtSueldo.getText()));
daoe.insertarEmpleado(em);
JOptionPane.showMessageDialog(this, "Datos insertados con exito");
daoe.mostrarEmpleado();
}
public void limpiar()
{
this.txtCodigo.setText("");
this.txtNombre.setText("");
this.txtEdad.setText("");
this.txtSueldo.setText("");
}
public void modificar()
{
try
{
em.setCodEmpleado(Integer.parseInt(this.txtCodigo.getText()));
em.setNombre(this.txtNombre.getText());
em.setEdad(Integer.parseInt(this.txtEdad.getText()));
em.setSueldo(Double.parseDouble(this.txtSueldo.getText()));
int SiONo=JOptionPane.showConfirmDialog(this, "Desea modificar el empleado",
"Modificar empleado",JOptionPane.YES_NO_OPTION);
if (SiONo==0)
{
daoe.modificarEmpleado(em);
JOptionPane.showMessageDialog(this, "Datos modificados con exito",
"Confirmacion", JOptionPane.INFORMATION_MESSAGE);
tablaE();
limpiar();
}
else
{
limpiar();
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
public void eliminar()
{
try
{
em.setCodEmpleado(Integer.parseInt(this.txtCodigo.getText()));
int SiONo=JOptionPane.showConfirmDialog(this, "Desea eliminar el empleado",
"Eliminar empleado", JOptionPane.YES_NO_OPTION);
if (SiONo==0)
{
daoe.eliminarEmpleado(em);
JOptionPane.showMessageDialog(rootPane, "Eliminado con exito",
"Confirmacion",JOptionPane.INFORMATION_MESSAGE);
tablaE();
limpiar();
}
else
{
limpiar();
}
}
catch (Exception e)
{
JOptionPane.showMessageDialog(rootPane, e.toString(),"Error",
JOptionPane.ERROR_MESSAGE);
}
}
public void llenarTabla()
{
int fila=this.tbEmpleado.getSelectedRow();
this.txtCodigo.setText(String.valueOf(this.tbEmpleado.getValueAt(fila, 0)));
this.txtNombre.setText(String.valueOf(this.tbEmpleado.getValueAt(fila, 1)));
this.txtEdad.setText(String.valueOf(this.tbEmpleado.getValueAt(fila, 2)));
this.txtSueldo.setText(String.valueOf(this.tbEmpleado.getValueAt(fila, 3)));
}
}
Descargar Archivo



0 comentarios: