Hola gente! Necesito ayuda con el codigo para hacer el logueo de una sesion.
Tengo el Jform con los campos username y password, y el boton OK para entrar. Como tendria que hacer para que busque en la base de datos, y valide que el usuario y la passw son correctas, para asi poder continuar con la aplicacion?
Espero respuesta! GRACIAS!
Buenas noches. Te comento que las dudas se colocan en dudas generales (https://underc0de.org/foro/dudas-generales-121/), así que lo moveré hacia allá. Respecto a tu problema, ¿cuál es el problema que tienes, siendo específicos?
El flujo es realmente muy sencillo. Lo primero que debes hacer es obtener los dados ingresados:
String username = txtUsername.getText();
String password = new String(txtPassword.getPassword());
Ahora, lo único que tienes que hacer es tu consulta. Aquí en realidad, no importa si estás usando capas de abstracción (patrones DAO o Repository) ya que la lógica es la misma: hacer una consulta hacia la base de datos para saber si los datos obtenidos existen.
PreparedStatement ps = conn.prepareStatement("SELECT * FROM users WHERE username = ? AND password = ?");
ps.setString(1, username);
ps.setString(2, password);
ResultSet rs = ps.executeQuery();
// evalua si el resultset está vacío, de ser así, no hay coincidencias
if(!rs.next()) {
// mostrar error de login
} else {
// login correcto
}
rs.close();
ps.close();
Es un ejemplo muy sencillo, para aplicarlo en una aplicación real, debes de capturar posibles excepciones con un try catch o multi catch.