ProfesorDAO.java
package persistencia;
import java.sql.SQLException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Vector;
import java.util.List;
import negocio.entities.*;
public class ProfesorDAO {
private DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
public int crearNuevoProfesor(Profesor profesor) throws SQLException {
Date fechaCreacion = new Date();
Date fechaActualizacion = fechaCreacion;
return GestorBD.getInstancia().insert("INSERT INTO profesor (dni, nombre, apellidos, doctor, fechaCreacion, fechaActualizacion) VALUES ('"
+ profesor.getDni()+"', '"
+ profesor.getNombre()+"', '"
+ profesor.getApellidos()+"', "
+ profesor.isDoctor()+", '"
+ dateFormat.format(fechaCreacion)+"', '"
+ dateFormat.format(fechaActualizacion)+"')");
}
public Profesor seleccionarProfesor(Profesor profesor) throws SQLException {
Vector datosProfesor = GestorBD.getInstancia().select("SELECT * FROM profesor WHERE dni='"+profesor.getDni()+"'");
datosProfesor = (Vector) datosProfesor.get(0);
String dni=(String) datosProfesor.get(0);
String nombre=(String) datosProfesor.get(1);
String apellidos= (String) datosProfesor.get(2);
boolean doctor=(Boolean) datosProfesor.get(3);
return new Profesor(dni, nombre, apellidos, doctor);
}
public int editarProfesor(Profesor profesor) throws SQLException {
Date fechaActualizacion = new Date();
return GestorBD.getInstancia().update("UPDATE profesor SET "
+ "nombre='" + profesor.getNombre() + "', "
+ "apellidos='" + profesor.getApellidos() + "', "
+ "doctor=" + profesor.isDoctor() + ", "
+ "fechaActualizacion='" + dateFormat.format(fechaActualizacion)
+ "' WHERE dni='"+profesor.getDni() + "'");
}
public int eliminarProfesor(Profesor profesor) throws SQLException {
return GestorBD.getInstancia().delete("DELETE FROM profesor WHERE dni='"+profesor.getDni()+"'");
}
public List<Profesor> listarProfesores() throws SQLException {
Vector profesoresDatos = GestorBD.getInstancia().select("SELECT * FROM profesor");
List<Profesor> listaProfes = new ArrayList<>();
for (int i=0; i<profesoresDatos.size(); i++) {
Vector profDatosTemp = (Vector) profesoresDatos.get(i);
String dni=(String) profDatosTemp.get(0);
String nombre=(String) profDatosTemp.get(1);
String apellidos= (String) profDatosTemp.get(2);
boolean doctor=(Boolean) profDatosTemp.get(3);
listaProfes.add(new Profesor(dni, nombre, apellidos,doctor));
}
return listaProfes;
}
}