olá a todos, estou tentando melhorar um código, no momento ele se encontra assim
Classe UsuarioPST
package lp3.aula7.pst;
import java.util.ArrayList;
import lp3.aula7.rn.Usuario;
public class UsuarioPST {
private ArrayList<Usuario> usuarios;
// métodos Construtores
public UsuarioPST(){
this.usuarios = new ArrayList<Usuario>();
carregarUsuarios();
}
// métodos específicos par localizar usuário no Array
// Localiza usuario por login
public Usuario encontrarUsuariosPorLogin(String login){
Usuario usuarioRetorno=null;
for (Usuario usuarioPercorre : usuarios) {
if (usuarioPercorre.getLogin().equals(login)){
usuarioRetorno=usuarioPercorre;
}
}
return usuarioRetorno;
}
// Localiza usuario por nome
public Usuario encontrarUsuariosPorNome(String nome){
Usuario usuarioRetorno=null;
for (Usuario usuarioPercorre : usuarios) {
if (usuarioPercorre.getNome().equals(nome)){
usuarioRetorno=usuarioPercorre;
}
}
return usuarioRetorno;
}
// metodo específico para Adicionar Usuários ao Array
public String adicionarUsuarios(Usuario u){
String mensagem="Usuário inserido com Sucesso!";
// considerando o Login como sendo uma PK
if(encontrarUsuariosPorLogin(u.getLogin())!=null){
mensagem="Não foi possível inserir o usário! O login "+
u.getLogin().toUpperCase()+ " já EXISTE!";
} else {
usuarios.add(u);
}
return mensagem;
}
//método específico para atualizar os dados do Usuário no Array
public String atualizarUsuarios(Usuario u){
String mensagem = "Usuário atualizado com sucesso!";
Usuario user = encontrarUsuariosPorLogin(u.getLogin());
if(user==null){
//se o usuário não existir - insere ele
mensagem = adicionarUsuarios(u);
} else {
// se já existir
user.setNome(u.getNome());
user.setSenha(u.getSenha());
}
return mensagem;
}
// método específico para remover um usuário do Array
public String removeUsuario(Usuario u){
String mensagem ="Usuário removido com sucesso!";
Usuario user = encontrarUsuariosPorLogin(u.getLogin());
if (user !=null) {
usuarios.remove(user);
} else {
mensagem ="Usuário não cadastrado!";
}
return mensagem;
}
// carrega alguns usuários padrão em memória para testarmos a aplicação
private void carregarUsuarios(){
Usuario user1 = new Usuario("Anderson","andy", "Pazin");
Usuario user2 = new Usuario("Java", "java", "aulas");
Usuario user3 = new Usuario("Eduardo","bergamo", "edu");
Usuario user4 = new Usuario("Fulano","beltrano", "ciclano");
this.adicionarUsuarios(user1);
this.adicionarUsuarios(user2);
this.adicionarUsuarios(user3);
this.adicionarUsuarios(user4);
}
}
Classe Usuario
package lp3.aula7.rn;
import lp3.aula7.pst.UsuarioPST;
public class Usuario {
private String nome;
private String login;
private String senha;
public Usuario(){}
public Usuario(String nome, String login, String senha) {
super();
this.nome = nome;
this.login = login;
this.senha = senha;
}
public String getNome() {
return nome;
}
public String getLogin() {
return login;
}
public String getSenha() {
return senha;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setLogin(String login) {
this.login = login;
}
public void setSenha(String senha) {
this.senha = senha;
}
//*************************************************
// Método Específico
//*************************************************
public boolean logar(){
UsuarioPST listaUsuarios = new UsuarioPST();
Usuario user = listaUsuarios.encontrarUsuariosPorLogin(this.login);
if (user == null){
return false;
}
if (user.getSenha().equals(this.getSenha())){
this.nome = user.getNome();
return true;
} else {
return false;
}
}
}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<jsp:useBean id="usuario" class="lp3.aula7.rn.Usuario"></jsp:useBean>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<title>
Controle de Usuários
</title>
<link rel="stylesheet" type="text/css" href="validacao.css" />
</head>
<body>
<br/>
<center>
<form name="fcadastro" id="fcadastro" method="post" action="index.jsp">
<table style="width: 311px" class="tabelaLogin">
<tr>
<td colspan="3" class="tituloPaginas">
Cadastro de Usuários
</td>
</tr>
<tr>
<td rowspan="4"><img src="img/chave.jpg" />
</td>
</tr>
<tr>
<td class="academicoLabel" style="text-align:center">
Nome
</td>
<td>
<input type="text" name="nome" id="nome" maxlength="14" size="20px" />
</td>
</tr>
<tr>
<td class="academicoLabel" style="text-align:center">
Login
</td>
<td>
<input type="text" name="login" id="login" maxlength="15" size="20px" />
</td>
</tr>
<tr>
<td class="academicoLabel" style="text-align:center">
Senha
</td>
<td>
<input name="Password" type="password" />
</td>
</tr>
<tr>
<td colspan="3">
<center>
<input type="submit" class="botaoPaginas" value="Enviar" />
<input type="reset" class="botaoPaginas" value="Limpar" />
</center>
</td>
</tr>
</table>
</form>
</center>
<br/>
<center>
<jsp:setProperty name="usuario" property="*"/>
<%
if(usuario.logar()){
%>
<span class="tituloPaginas">
Bem Vindo
<i>
<jsp:getProperty name="usuario" property="nome"/>
</i>
</span>
<%
}else{
%>
<form name="flogin" id="flogin" method="post" action="index.jsp">
<table style="width: 311px" class="tabelaLogin">
<tr>
<td colspan="3" class="tituloPaginas">
Controle de Acesso
</td>
</tr>
<tr>
<td rowspan="3" style="width: 30px"><img src="img/chave.jpg" />
</td>
</tr>
<tr>
<td class="academicoLabel" style="text-align:center">
Login
</td>
<td style="width: 148px">
<input type="text" name="login" id="login" maxlength="14" size="20px" />
</td>
</tr>
<tr>
<td class="academicoLabel" style="text-align:center">
Senha
</td>
<td style="width: 148px">
<input type="password" name="senha" id="senha" maxlength="15" size="20px" />
</td>
</tr>
<tr>
<td colspan="3">
<center>
<input type="submit" class="botaoPaginas" value="Enviar" />
<input type="reset" class="botaoPaginas" value="Limpar" />
</center>
</td>
</tr>
</table>
</form>
<%
}
%>
</center>
</body>
</html>
Atualmente está funcionando assim: Na tela de controle de acesso eu digito o login e a senha logo com o usuario ja inserido no arraylist e mostro uma mensagem de bem vindo e o nome do usuario, se o usuario estiver errado eu limpo o cadastro.
O que preciso?
Na tela de cima preciso que o usuario digite o Nome, um login e uma senha, depois de digitado esses dados são guardados no arraylist possibilidando q o usuario efetue todo o cadastro na tela de baixo. Verificando antes se o usuario existe ou não no arraylist, levando em consideração que login é uma PK.
Alguem pode me ajudar???
desde já, obrigado.