Advertisement
Guest User

Untitled

a guest
May 22nd, 2017
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.39 KB | None | 0 0
  1. private Boolean lectorBD(String Nombre, String Pass){
  2.         Boolean estado = false;
  3.  
  4.             try{
  5.                 String MySQLDriver ="com.mysql.jdbc.Driver",
  6.                         DriGetConn = "jdbc:mysql://127.0.0.1/proyec",
  7.                         //El nombre de usuario y la contraseña para entrar a BD
  8.                         userBD = "root", passBD ="cu4tr04",
  9.                         selectID ="SELECT id FROM usernames WHERE username ='",
  10.                         IDpass ="", //El ID de la persona que se loguea
  11.                         selectMD5 ="SELECT password FROM passwords WHERE id ='",
  12.                         passMD5 = "", //La contraseña de la persona leida desde la BD
  13.                         selectDatos ="SELECT nombre, apellido FROM dusuarios WHERE rut='";
  14.  
  15.                 Class.forName(MySQLDriver);
  16.                 Connection conexion = DriverManager.getConnection
  17.                         (DriGetConn, userBD, passBD);
  18.                 Statement query = conexion.createStatement(
  19.                         ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
  20.                 ResultSet rs = query.executeQuery(selectID + Nombre +"'");
  21.                 rs.first();
  22.                 IDpass = rs.getString("id");
  23.                 rs.close();
  24.                 rs = query.executeQuery(selectMD5 + IDpass + "'");
  25.                 rs.first();
  26.                 passMD5 = rs.getString("password");
  27.                 rs.close();
  28.                 if(this.passMatch(passMD5, Pass)){
  29.                     rs = query.executeQuery(selectDatos + IDpass +"'");
  30.                     rs.first();
  31.                     this.AttNombre = rs.getString(1);
  32.                     this.AttAppe = rs.getString(2);
  33.                     rs.close();
  34.                     estado = true;
  35.                 }else {
  36.                     this.Error = 3;
  37.                 }
  38.                 query.close(); conexion.close();
  39.             }catch(SQLException ex){
  40.                this.SQLEx = "Se produjo una excepción durante la conexión: "+ ex.toString();
  41.                this.Error = 4;
  42.             }catch(Exception ex){
  43.                 this.EX = "Se produjo una excepción: "+ ex.toString();
  44.                 this.Error = 5;
  45.             }
  46.        
  47.         return estado;
  48.     }
  49.  
  50.     private Boolean passMatch(String passMD5, String Pass){
  51.         if(Pass.equals(passMD5)){
  52.             return true;
  53.         }else{
  54.             return false;
  55.         }
  56.     }
  57.  
  58.     private Boolean validar(String parNom, String parPass){
  59.         Boolean estado = false;
  60.         if(!parNom.isEmpty()){
  61.             if(!parPass.isEmpty()){
  62.                 estado = this.lectorBD(parNom,parPass);
  63.             }else{ this.Error = 1; }
  64.         }else{ this.Error = 2; }
  65.  
  66.         return estado;
  67.     }
  68.  
  69.     @Override
  70.     public void doPost(HttpServletRequest request, HttpServletResponse response)
  71.     throws ServletException, IOException {
  72.         Boolean estado;
  73.         String URL = "/ConectaBD/postLog.jsp";
  74.         estado = this.validar(request.getParameter("nombre"), request.getParameter("hash"));
  75.         HttpSession sesion = request.getSession(true);
  76.         if(estado){
  77.              sesion.setAttribute("nombre", this.AttNombre);
  78.              sesion.setAttribute("ape", this.AttAppe);
  79.         }else{
  80.             URL = URL + "?error=" + this.Error;
  81.         }
  82.  
  83.         response.sendRedirect(response.encodeURL(URL));
  84.     }
  85.  
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement