You are on page 1of 5

AlumnoDAO

package dao.component;
import
import
import
import
import
import
import
import
import

dao.design.IAlumnoDAO;
dao.ds.AccesoDB;
dao.to.AlumnoTO;
java.sql.CallableStatement;
java.sql.Connection;
java.sql.ResultSet;
java.sql.SQLException;
java.util.ArrayList;
java.util.List;

public class AlumnoDAO implements IAlumnoDAO{


private AccesoDB db;
public AlumnoDAO() {
db = new AccesoDB();
}
@Override
public ArrayList<AlumnoTO> listaalumnos() {
ArrayList<AlumnoTO> lista = new ArrayList<AlumnoTO>();
String procedimientoalmacenado = "{CALL sp_listaralumnos()}";
Connection cn = db.getConnection();
if (cn!= null) {
try {
CallableStatement cs = cn.prepareCall(procedimientoalmacenado);
ResultSet rs = cs.executeQuery();
while (rs.next()) {
AlumnoTO alu = new AlumnoTO();
alu.setIdalumno(rs.getInt("idalumno"));
alu.setNombre(rs.getString("nombre"));
alu.setApellido(rs.getString("apellido"));
alu.setEdad(rs.getInt("edad"));
alu.setDni(rs.getString("dni"));
lista.add(alu);
}
} catch (SQLException ex) {}
finally {
try {
cn.close();
} catch (SQLException e) {}
}
}
return lista;
}
@Override
public String insertaralumno(AlumnoTO alumno) {
String rpta = null;
Connection cn = db.getConnection();
String procedimientoalmacenado = "{CALL sp_insertaralumno(?,?,?,?)}";
if (cn!=null) {
try {
CallableStatement cs = cn.prepareCall(procedimientoalmacenado);
cs.setString(1,alumno.getNombre());
cs.setString(2, alumno.getApellido());
cs.setInt(3, alumno.getEdad());
cs.setString(4, alumno.getDni());

int inserto = cs.executeUpdate();


if (inserto==0) {
rpta = "Error";
}
}catch (SQLException ex) {rpta = ex.getMessage();}
finally {
try {
cn.close();
} catch(SQLException e) {
rpta = e.getMessage();
}
}
}
return rpta;
}
@Override
public String actualizaralumno(AlumnoTO alumno) {
String rpta = null;
Connection cn = db.getConnection();
String procedimientoalmacenado = "{CALL sp_actualizaralumno(?,?,?,?,?)}"
;
if (cn!=null) {
try{
CallableStatement cs = cn.prepareCall(procedimientoalmacenado);
cs.setInt(1, alumno.getIdalumno());
cs.setString(2, alumno.getNombre());
cs.setString(3, alumno.getApellido());
cs.setInt(4, alumno.getEdad());
cs.setString(5, alumno.getDni());
int actualizo = cs.executeUpdate();
if(actualizo ==0) {
rpta = "Error";
}
} catch (SQLException ex) {rpta = ex.getMessage();}
finally {
try{
cn.close();
} catch (SQLException e) {
rpta = e.getMessage();
}
}
}
return rpta;
}
@Override
public String eliminaralumno(List<Integer> idalumno) {
String rpta = null;
Connection cn = db.getConnection();
String procedimientoalmacenado = "{CALL sp_eliminaalumno(?)}";
if (cn!=null) {
try{
CallableStatement cs = cn.prepareCall(procedimientoalmacenado);
for (Integer ix : idalumno) {
cs.setInt(1, ix);
cs.executeUpdate();
}
} catch (SQLException ex) {rpta = ex.getMessage();}
finally {

try{
cn.close();
} catch (SQLException e) {
rpta = e.getMessage();
}
}
}
return rpta;
}
@Override
public AlumnoTO datoalumnoporid(Integer id) {
AlumnoTO alu = new AlumnoTO();
Connection cn = db.getConnection();
String procedimientoalmacenado = "{CALL sp_datosalumnoporid(?)}";
if (cn!=null) {
try{
CallableStatement cs = cn.prepareCall(procedimientoalmacenado);
cs.setInt(1, id);
ResultSet rs = cs.executeQuery();
if(rs.next()) {
alu.setIdalumno(rs.getInt("idalumno"));
alu.setNombre(rs.getString("nombre"));
alu.setApellido(rs.getString("apellido"));
alu.setEdad(rs.getInt("edad"));
alu.setDni(rs.getString("dni"));
}
} catch (SQLException ex) {}
finally {
try{
cn.close();
} catch (SQLException e) {
}
}
}
return alu;
}
}
---------------------------------------------------------AccesoDB
package dao.ds;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class AccesoDB {
public Connection getConnection() {
Connection cn = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
cn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/dbuniversidad",
"root","root");
} catch (SQLException e) {
} catch (Exception e) {
}
return cn;
}

public AccesoDB() {
}
}
-----------------------------------------------------------------------------------------------DAOFactory
package dao;
import dao.component.AlumnoDAO;
import dao.design.IAlumnoDAO;
public class DAOFactory {
private static DAOFactory daoFac;
static {
daoFac = new DAOFactory();
}
public static DAOFactory getInstance() {
return daoFac;
}
public IAlumnoDAO getAlumnoDAO() {
return new AlumnoDAO();
}
}
-----------------------------------------------------------------------------------------------MVC
CONTROLADOR
package MCV_PRINCIPAL;
import
import
import
import

dao.DAOFactoria;
dao.design.empleadoDAO;
java.awt.event.ActionEvent;
java.awt.event.ActionListener;

/**
*
* @author RONALD
*/
public class controlador implements ActionListener{
private vista vista;
private empleadoDAO em;
public empleadoDAO getEm() {
return em;
}
public void setEm(empleadoDAO em) {
this.em = em;
}

public controlador(vista vista){


this.vista = vista;
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals(vista.gestionarVenta)){
DAOFactoria tra = DAOFactoria.getDAOFactoria(2);
em = tra.getEmpleadoDAO();
vista.gestionarVenta(em.datoempleadoid(101),tra);
}
else if (e.getActionCommand().equals(vista.gestionarCompra)){
DAOFactoria tra = DAOFactoria.getDAOFactoria(2);
em = tra.getEmpleadoDAO();
vista.gestionarCompra(em.datoempleadoid(101),tra);
}
}
}
-----------------------------------------------------------------------------VISTA
package MCV_PRINCIPAL;
import dao.DAOFactoria;
import dao.to.empleadoTO;
import java.util.ArrayList;
public interface vista {
void setControlador(controlador c);
void arranca(); //comienza la visualizacion
void gestionarCompra(empleadoTO em,DAOFactoria tra);
void gestionarVenta(empleadoTO em,DAOFactoria tra);
//constantes que definen las posibles operaciones:
public static String gestionarVenta="Gestionar Venta";
public static String gestionarCompra="Gestionar Compra";
}
------------------------------------------------------------------------------------

You might also like