Ir para conteúdo
Fórum Script Brasil

csinho

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre csinho

csinho's Achievements

0

Reputação

  1. Galera, estou fazendo um site onde estou usando JSP, Servlet e conex'ao com MySql, problema [e no momento do usuario passar os dados ~login e senha~, quero puxar do BD e retornar o login na proxima pagina e em outras. n'ao sei direito mais pesquisei bastante sobre isso e achei algo com session. Me ajudem por favor. Aqui esta o arquivo do login.jsp <form name="login" method="post" action="Logar"> <input type="text" class="text" value="Digite seu login" name="email" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Digite seu login';}" > <input type="Password" value="Password" name="senha" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Password';}"> <br> <label id="submit"/><a><input type="submit" value="Login" /></a></label> <br> <h3><label id="button"/><a href="index_Cadastro.jsp">Novo cadastro</a></label></h3> <div class="clearfix"></div> </form> Aqui esta o arquivo do logar (servlet) package control; import java.io.IOException; import java.io.PrintWriter; import static java.lang.System.out; import java.util.logging.Level; import java.util.logging.Logger; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import model.Usuario; import persistence.UsuarioController; @WebServlet(name = "Logar", urlPatterns = {"/Logar"}) public class Logar extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { } finally { out.close(); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("email"); String senha = request.getParameter("senha"); RequestDispatcher rd = null; Usuario user = new Usuario(); user.setEmail(username); user.setSenha(senha); UsuarioController uc = new UsuarioController(user); try { if(uc.verificaUsuario()) { //Caso login e senha estejam corretos... if(username.equals("usuario") && senha.equals("pass")){ HttpSession session = request.getSession(true); session.setAttribute("usuario",username); session.setAttribute("pass",senha); out.println("Bem vindo."+ username +"."); //Mostra na tela que foi logado com sucesso session.putValue("loginUsuario", session.getAttribute("usuario")); //Grava a session com o Login session.putValue("senhaUsuario", session.getAttribute("pass")); //Grava a session com a Senha //out.println("<script>document.location.href='tela_download.jsp';</script>"); //Exibe um código javascript para redireionar ao painel request.setAttribute("msg", username); request.getRequestDispatcher("tela_download.jsp").forward(request, response); } /*request.setAttribute("msg", usuario); rd=request.getRequestDispatcher("tela_download.jsp"); rd.forward(request,response);*/ } else { request.setAttribute("msg", "Usuário ou Senha inválidos"); rd=request.getRequestDispatcher("index_login.jsp"); rd.forward(request,response); //Se estiverem incorretos... // out.println("Login ou senha inválidos. <a href='java script:back()'>Voltar</a>"); //Exibe na tela e pede para voltar } } catch (Exception ex) { Logger.getLogger(Logar.class.getName()).log(Level.SEVERE, null, ex); } } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } @Override public String getServletInfo() { return "Short description"; }// </editor-fold> } Aqui esta o arquivo do logado.jsp <% //Verifica se está logado if(session.getValue("loginUsuario") != null || session.getValue("senhaUsuario") != null){ out.println( %> </head> <body> <div class="login-cadastro"> <nav> <ul class="login-list"> <li><% session.getValue("loginUsuario") + %> ${msg }</li> <li style="">|</li> <li><% "<a href='index.jsp'>SAIR</a>;"); } else { out.println("Você não está logado no sistema.<a href='index_login.jsp'> Clique aqui para logar-se </a>"); } %></li> </ul </nav> </div> Aqui esta o arquivo do UsuarioBD ( minha conexao com BD MySql ) import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import model.Usuario; public class UsuarioController { PreparedStatement stmt; ResultSet rs; Connection con; private final String URL = "jdbc:mysql://localhost:3306/tutorial"; private final String USER = "root"; private final String PASS = ""; private Usuario usuario; public UsuarioController(Usuario usr) { usuario=usr; } public boolean verificaUsuario() throws Exception{ Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(URL, USER, PASS); if(usuario.getEmail()!=null && usuario.getSenha()!=null) { try { String strsql="SELECT * FROM cadastro WHERE email = ? and senha = ?;"; PreparedStatement stmt = con.prepareStatement(strsql); stmt.setString(1, usuario.getEmail()); stmt.setString(2, usuario.getSenha()); ResultSet rs=stmt.executeQuery(); if(rs.next()) //Existe o usuário no banco de dados { rs.close(); stmt.close(); return true; } // Não existe o usuário rs.close(); stmt.close(); return false; } catch (SQLException e) {return false;} } return false; } public boolean verificaUsuario(int senha) { return true; } public boolean verificaUsuario(String email) { return true; } } Alguns codigos, coloquei o mais importante, outros coloquei tudo. Me ajudem por favor.
×
×
  • Criar Novo...