CentroDAO.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.List;
import java.util.Vector;
import negocio.entities.*;
public class CentroDAO {
//Centro(nombre, localizacion, atributo)
private DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
public int crearNuevoCentro(Centro centro) throws SQLException {
Date fechaCreacion = new Date();
Date fechaActualizacion = fechaCreacion;
return GestorBD.getInstancia().insert("INSERT INTO centro (nombre, localizacion, atributo, fechaCreacion, fechaActualizacion) VALUES ('"
+ centro.getNombre()+"', '"
+ centro.getLocalizacion()+"', "
+ centro.getAtributo()+", '"
+ dateFormat.format(fechaCreacion)+"', '"
+ dateFormat.format(fechaActualizacion)+"')");
}
public Centro seleccionarCentro(Centro centro) throws SQLException {
Vector datosCentro = GestorBD.getInstancia().select("SELECT * FROM centro WHERE nombre='"+centro.getNombre()+"'");
datosCentro = (Vector) datosCentro.get(0);
String nombre = (String) datosCentro.get(0);
String localizacion= (String) datosCentro.get(1);
int atributo = (Integer) datosCentro.get(2);
return new Centro(nombre, localizacion, atributo);
}
public int editarCentro(Centro centro) throws SQLException{
Date fechaActualizacion = new Date();
return GestorBD.getInstancia().update("UPDATE centro SET "
+ "nombre='" + centro.getNombre() + "', "
+ "localizacion='" + centro.getLocalizacion() + "', "
+ "atributo=" + centro.getAtributo() + ", "
+ "fechaActualizacion='" + dateFormat.format(fechaActualizacion)
+ "' WHERE nombre='"+centro.getNombre()+"'");
}
public int eliminarCentro(Centro centro) throws SQLException {
return GestorBD.getInstancia().delete("DELETE FROM centro WHERE nombre='"+centro.getNombre()+"'");
}
public List<Centro> listarCentros() throws SQLException {
Vector listaCursosDatos = GestorBD.getInstancia().select("SELECT * FROM centro");
List<Centro> centros = new ArrayList<>();
for (int i=0; i<listaCursosDatos.size(); i++) {
Vector lCursosDatosTemp = (Vector) listaCursosDatos.get(i);
String nombre = (String) lCursosDatosTemp.get(0);
String localizacion = (String) lCursosDatosTemp.get(1);
int atributo = (Integer) lCursosDatosTemp.get(2);
centros.add(new Centro(nombre, localizacion, atributo));
}
return centros;
}
}