aca esta el codigo:
ValidadorUsuario.java
Código:
Que comando uso para pasar el query armado como corresponde?
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class ValidadorUsuario {
private String usuario;
private String password;
private String nombre;
private boolean valido = false;
private Exception ultimaExcepcion;
private boolean hayError = false;
private boolean buscarElUsuarioYLaPass() throws SQLException{
Connection coneccion = null;
PreparedStatement sentencia = null;
ResultSet resultado = null;
String DRIVER = "org.apache.derby.jdbc.EmbeddedDriver";
String URL = "jdbc:derby:e:\\Usuarios";
String QUERY = "SELECT PASSWORD, USUARIO FROM AGUSTIN.LOGIN WHERE USUARIO = ?";
boolean existe = false;
try {
System.out.println("Cargando el driver..."); //agregado de prueba
Class.forName(DRIVER);
System.out.println("Cargado OK."); //agregado de prueba
System.out.println("Conectando..."); //agregado de prueba
coneccion = DriverManager.getConnection(URL);
System.out.println("URL: "+URL); //agregado de prueba
System.out.println("Preparando sentencia..."); //agregado de prueba
sentencia = coneccion.prepareStatement(QUERY);
sentencia.setString(1, usuario);
System.out.println("Sentencia: " + sentencia); //agregado de prueba
resultado = sentencia.executeQuery(QUERY); //valor de QUERY en hexa
//resultado = sentencia.execute(); //no funciona,
// no puede convertir de boolean a ResultSet
if(coneccion!=null){
System.out.println("OK - Se conecto"); //agregado de prueba
}
if (resultado.next()&& password.equals(resultado.getString("PASSWORD"))){
nombre = resultado.getString("USUARIO");
existe = true;
}
} catch (Exception e) {
hayError = true;
ultimaExcepcion = e;
e.printStackTrace();
} finally {
if (resultado != null) resultado.close();
if (sentencia != null) sentencia.close();
if (coneccion != null) coneccion.close();
}
return existe;
}
//Getters y Setters
public String getUsuario(){
return usuario;
}
public void setUsuario(String u){
usuario = u;
}
public void setPassword(String u){
password = u;
}
public String getNombre(){
return nombre;
}
public boolean isValid(){
if(valido) return true;
try{
hayError = false;
valido = buscarElUsuarioYLaPass();
}catch(Exception e){
ultimaExcepcion = e;
valido = false;
hayError = true;
}
return valido;
}
public boolean isError(){
return hayError;
}
public Exception getUltimaExcepcion(){
return ultimaExcepcion;
}
}

