Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Como leer datos de una base de datos

Buenas tardes tengo que leer los datos de una base de datos y tengo un problema.
Tengo tres clases llamadas Cliente, Artículos y Alquiler. Cuando quiero recuperar los datos de la base de datos no se como puedo recuperar los datos que están en la clase Articulo.
He probado con : objAlquiler.setArticulo(objArticulo.setIdentificador(rs.getInt(1)));
pero me da error.
Me puede ayudar alguien?.
Muchas Gracias.

public class Cliente {


private String nif;
private String nombre;
private String apellidos;
private Date nacimiento;

public String getNif() {
return nif;
}

public void setNif(String nif) {
this.nif = nif;
}

public String getNombre() {
return nombre;
}

public void setNombre(String nombre) {
this.nombre = nombre;
}

public String getApellidos() {
return apellidos;
}

public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}

public Date getNacimiento() {
return nacimiento;
}

public void setNacimiento(Date nacimiento) {
this.nacimiento = nacimiento;
}

public Cliente(String nif, String nombre, String apellidos, Date nacimiento) {
this.nif = nif;
this.nombre = nombre;
this.apellidos = apellidos;
this.nacimiento = nacimiento;
}

public Cliente(){

}

}

public class Articulo {

private int identificador;
private String nombre;
private boolean mas18;
private boolean alquilado;

public int getIdentificador() {
return identificador;
}

public void setIdentificador(int identificador) {
this.identificador = identificador;
}

public String getNombre() {
return nombre;
}

public void setNombre(String nombre) {
this.nombre = nombre;
}

public boolean isMas18() {
return mas18;
}

public void setMas18(boolean mas18) {
this.mas18 = mas18;
}

public boolean isAlquilado() {
return alquilado;
}

public void setAlquilado(boolean alquilado) {
this.alquilado = alquilado;
}

public Articulo(int identificador, String nombre, boolean mas18, boolean alquilado) {
this.identificador = identificador;
this.nombre = nombre;
this.mas18 = mas18;
this.alquilado = alquilado;
}

public Articulo(){

}

}

public class Alquiler {

private Cliente cliente;
private Articulo articulo;
private Date fecha;

public Cliente getCliente() {
return cliente;
}

public void setCliente(Cliente cliente) {
this.cliente = cliente;
}

public Articulo getArticulo() {
return articulo;
}

public void setArticulo(Articulo articulo) {
this.articulo = articulo;
}

public Date getFecha() {
return fecha;
}

public void setFecha(Date fecha) {
this.fecha = fecha;
}

public Alquiler(Cliente cliente, Articulo articulo, Date fecha) {
this.cliente = cliente;
this.articulo = articulo;
this.fecha = fecha;
}

public Alquiler(){

}

}

Funcion para recuperar datos:

public static HashMap<String, Alquiler> filtrarAlquileres(int tipoFiltro, String valor) throws Exception{
DataSource data = null;
ResultSet rs = null;
PreparedStatement st;
st = null;

HashMap<String, Alquiler> hashAlquileres = new HashMap<String, Alquiler>();

try {
data = new DataSource();
st = data.getStatement("SELECT NIF,IDENTIFICADOR,FECHA FROM ALQUILER WHERE NIF = ?");
st.setString(1, valor);
rs = data.ejecutarSelect(st);
while (rs.next()) {
Alquiler objAlquiler = new Alquiler();
Articulo objArticulo = new Articulo();
Alquiler.setArticulo(objArticulo.setIdentificador(rs.getInt(1)));
objAlquiler.setFecha(rs.getDate(4));
hashAlquileres.put(objAlquiler.getCliente().getNif(), objAlquiler);

}
rs.close();
return hashAlquileres;
} catch (SQLException ex) {
System.err.println(ex.getMessage());
throw new Exception(ex.getMessage());
} finally {
if (rs != null) rs.close();
if (st != null) st.close();
if (data != null) data.cerrarConexion();
}
}

agosto 14, 2018 | Unregistered CommenterJuan