Listato 4. Gestisce l'autenticazione degli utenti
//UserManagerConcrete.javapackage
it.html.user;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* @author Pasquale Congiustì
* Realizzazione di UserManager
*/
public class UserManagerConcrete implements UserManager {
//La classe attraverso la quale gestiamo l'accesso al database
private Connection conn;
public UserManagerConcrete(Connection conn){
this.conn=conn;
}
public User login(String user, String password) throws LoginException, SQLException {
User toRet=null;
String sql="SELECT * FROM user where uid='"+user+"' AND password='"+password+"'";
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery(sql);
if (rs.next()){
//Se user e password coincidono, l'utente esiste
String uid=rs.getString("uid");
String pwd=rs.getString("password");
String mail=rs.getString("email");
double space=rs.getDouble("disk");
toRet=new User(space,mail,pwd,uid);
}
//Chiusura dei flussi aperti
rs.close();
st.close();
if (toRet==null){
//Nessun utente è stato trovato!
throw new LoginException("Autenticazione fallita.");
}
return toRet;
}
}