Está en la página 1de 5

Ejemplo de 3 capas con java

CLASE Producto:

package com.pollitosperu.sistemaVentas.comun.Entidades;

public class Producto {


   private int codigo;
   private String nombre;
   private int cantidad;
   private String descripcion;
 
   public int getCodigo() {
       return codigo;
   }
 
   public void setCodigo(int codigo) {
       this.codigo = codigo;
   }
 
 
   public String getNombre() {
       return nombre;
   }
 
   public void setNombre(String nombre) {
       this.nombre = nombre;
   }
 
   public int getCantidad() {
       return cantidad;
   }
 
   public void setCantidad(int cantidad) {
       this.cantidad = cantidad;
   }
 
   public String getDescripcion() {
       return descripcion;
   }
 
   public void setDescripcion(String descripcion) {
       this.descripcion = descripcion;
   }
}
CLASE IdaoProducto

package com.pollitosperu.sistemaVentas.comun.Interfases;
import com.pollitosperu.sistemaVentas.comun.Entidades.Producto;
import java.util.ArrayList;
 
public interface IdaoProducto {
 
   public void agreagProducto(Producto producto);
 
   public void eliminaProducto(int codigo);
 
   public void modificaProducto(int codigo, Producto producto);
 
   public ArrayList<Producto> listaProductos();
}

CLASE ConexionPollito

package com.pollitosperu.sistemaVentas.datos;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
 
public class ConexionPollito {
 
   private Connection conection = null;
 
   public Connection getConection() {
       if (conection == null) {
           try {
               Driver driver = new com.mysql.jdbc.Driver();
               DriverManager.registerDriver(driver);
               conection =
DriverManager.getConnection("jdbc:mysql://localhost:3306/pollitosperu", "root",
"root");
           } catch (SQLException ex) {
               ex.printStackTrace();
               Logger.getLogger(ConexionPollito.class.getName()).log(Level.SEVERE,
null, ex);
           }
       }
       return conection;
   }
}
CLASE DBdaoProducto IMPLEMENTADA IdaoProducto

package com.pollitosperu.sistemaVentas.datos;
import com.pollitosperu.sistemaVentas.comun.Entidades.Interfases.IdaoProducto;
import com.pollitosperu.sistemaVentas.comun.Entidades.Producto;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
 
public class DBdaoProducto implements IdaoProducto {
 
   private Connection connection = new ConexionPollito().getConection();
 
   public void agreagProducto(Producto producto) {
       try {
           CallableStatement statement = connection.prepareCall("{call
agreagaProducto (?,?,?)}");
           statement.setString("nombre", producto.getNombre());
           statement.setInt("cantidad", producto.getCantidad());
           statement.setString("descripcion", producto.getNombre());
           statement.executeUpdate();
       } catch (SQLException ex) {
           ex.printStackTrace();
       }
    }
 
   public void eliminaProducto(int codigo) {
       try {
           CallableStatement statement = connection.prepareCall("{call
eliminaProducto (?)}");
           statement.setInt("cod", codigo);
           statement.executeUpdate();
       } catch (SQLException ex) {
           ex.printStackTrace();
       }
    }
 
   public void modificaProducto(int codigo, Producto producto) {
       try {
           CallableStatement statement = connection.prepareCall("{call
modificaProducto (?,?,?,?)}");
           statement.setInt("cod", codigo);
           statement.setString("nom", producto.getNombre());
           statement.setInt("cant", producto.getCantidad());
           statement.setString("descrip", producto.getNombre());
           statement.executeUpdate();
       } catch (SQLException ex) {
           ex.printStackTrace();
       }
   }
 
   public ArrayList<Producto> listaProductos() {
       ArrayList<Producto> productos = new ArrayList<Producto>();
       try {
           CallableStatement statement = connection.prepareCall("{call
listaProductos }");
           ResultSet resultSet = statement.executeQuery();
           while (resultSet.next()) {
               Producto producto = new Producto();
               producto.setNombre(resultSet.getString("nombre"));
               producto.setCodigo(resultSet.getInt("codigo"));
               producto.setCantidad(resultSet.getInt("cantidad"));
               producto.setDescripcion(resultSet.getString("descripcion"));
               productos.add(producto);
           }
           return productos;
       } catch (SQLException ex) {
           ex.printStackTrace();
           return null;
       }
   }
}

CLASE: DaoProducto IMPLEMENTADA IdaoProducto

package com.pollitosperu.sistemaVentas.logica;
import com.pollitosperu.sistemaVentas.comun.Entidades.Interfases.IdaoProducto;
import com.pollitosperu.sistemaVentas.comun.Entidades.Producto;
import com.pollitosperu.sistemaVentas.datos.DBdaoProducto;
import java.util.ArrayList;
 
public class DaoProducto implements IdaoProducto {
 
   private DBdaoProducto daoProducto = new DBdaoProducto();
 
   public DaoProducto() {
   }
 
   public void agreagProducto(Producto producto) {
       daoProducto.agreagProducto(producto);
   }
 
   public void eliminaProducto(int codigo) {
       daoProducto.eliminaProducto(codigo);
   }
 
   public void modificaProducto(int codigo, Producto producto) {
       daoProducto.modificaProducto(codigo, producto);
   }
 
   public ArrayList<Producto> listaProductos() {
       return daoProducto.listaProductos();
   }
}
CLASE DEL FORMULARIO FrmProducto:

package com.pollitosperu.sistemaVentas.vista;
import com.pollitosperu.sistemaVentas.comun.Entidades.Producto;
import com.pollitosperu.sistemaVentas.logica.DaoProducto;
import java.util.ArrayList;
import java.util.Iterator;
import javax.swing.DefaultListModel;

public class FrmProducto extends javax.swing.JFrame {


 
......
 
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {            

       DaoProducto daoProducto = new DaoProducto();


       Producto producto = new Producto();
       producto.setNombre(txtnombre.getText());
       producto.setDescripcion(txtDescripcion.getText());
       producto.setCantidad(Integer.parseInt(txtCantidad.getText()));
       daoProducto.agreagProducto(producto);
   }
 
 private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {          

       DaoProducto daoProducto = new DaoProducto();


       daoProducto.eliminaProducto(1);
   }  
 
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {            

       DaoProducto daoProducto = new DaoProducto();


       ArrayList<Producto> productos = daoProducto.listaProductos();
       Iterator iterator = productos.iterator();
       DefaultListModel defaultListModel = new DefaultListModel();
       jList1.setModel(defaultListModel);
       defaultListModel.clear();
       while (iterator.hasNext()) {
           Producto producto = new Producto();
           producto = (Producto) iterator.next();
           defaultListModel.addElement(producto.getNombre());
       }
    }
 
 private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {          

       DaoProducto daoProducto = new DaoProducto();


       Producto producto = new Producto();
       producto.setNombre(txtnombre.getText());
       producto.setDescripcion(txtDescripcion.getText());
       producto.setCantidad(Integer.parseInt(txtCantidad.getText()));
       daoProducto.modificaProducto(Integer.parseInt(txtcodigo.getText()),
producto);
   }    
 }

También podría gustarte