Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal, Estou a 3 dias me matando com um trabalho da faculdade. A propsta é a seguinte tenho que fazer um sistema de login e senha porem sem banco de dados. Então eu criei 2 classes, uma de Usuario que tem, usuario e senha e outra com nome de bancodados que armazena um array do Obejto Usuario, então toda vez que adiciono um usuario eu adiciono esse usuario na minha classe banco de dados dentro de um array.
Até ai tudo funcionando certinho, o problema é que antes de adiionar o usuário eu criei um metodo que percorre todos os objetos do array de usuarios pegando o nome do usuario e comparando com o usuario que digitaram, só que parece que ele não consegue fazer a comparação correta e ele nunca me retorna falando que o usuario já ta cadastrado. Só que se eu chamar o outro metodo que criei na classe banco de dados que exibe todos os usuarios ele lista todos e se eu cadastrei 10 com o mesmo nome ele lista os 10. Vou postar o código, já estou deseserado com isso. MEU SERVLET
import java.io.IOException. import javax.servlet.ServletException. import javax.servlet.annotation.WebServlet. import javax.servlet.http.HttpServlet. import javax.servlet.http.HttpServletRequest. import javax.servlet.http.HttpServletResponse. /** Servlet implementation class registrarServlet /private static final long serialVersionUID = 1L. /** * @see HttpServlet#HttpServlet() */ public registrarServlet() { super(). // TODO Auto-generated constructor stub } /**bd = (bancoDados) getServletContext().getAttribute("bancoDados"). } String usuario = request.getParameter("usuario"). String senha = request.getParameter("senha"). String mensagem = "". boolean usuarioExiste = false. //cadastra no bancoUsuario u = new Usuario(usuario,senha). usuarioExiste = bd.procuraUsuario(usuario). if(usuarioExiste == false) {
bd.adicionaUsuario(u). getServletContext().setAttribute("bancoDados", bd). mensagem = "Usuário cadastrado com sucesso!". mensagem = "Usuário ja cadastrado". } request.setAttribute("msgs", mensagem). request.getRequestDispatcher("/jsp/cadastroResposta.jsp").forward(request, response). } } MINHA CLASSE bancoDados import java.util.ArrayList. public class bancoDados { ArrayList<Usuario> Usuarios = new ArrayList<>(). ArrayList<Object> Agenda = new ArrayList<>(). public void adicionaUsuario(Usuario Usuario) {Usuarios.add(Usuario). } public void adicionaAgenda(Object Registro) {Agenda.add(Registro). } public boolean procuraUsuario(String usuario) {Usuario u = Usuarios.get(i). if(u.getUsuario() == usuario) { return true. }
}
return false. } public String exibeUsuarios(){Usuario u = Usuarios.get(i). x = x + "<br>" + u.getUsuario(). }
return x. } } MINHA CLASSE USUARIO public class Usuario { String usuario. String senha. public String getUsuario() {return usuario. } public Usuario (String usuario, String senha) {this.usuario = usuario. this.senha = senha. } public boolean validaUsuario() {return false. }
return true. } } Quem puder por favor me ajude já não sei mais o que fazer, acho que ele da erro ao comparar u.getUsuario() == usuario, tem outra forma de efetuar a comparação?Carregando comentários...