Boa noite a todos, sou novo em Java como muitos por aqui e gostaria de saber se posso passar um ArrayList como parâmetro na hora em que meu CFronteiraLogin der um new CFPrincipal().setVisible(true);
Se a resposta for positiva gostaria de saber como, e na hora que minha classe CFPrincipal() receber este ArrayList como uso o mesmo.
CFronteiraLogin
public void Logar() {
CControleLogin controleLogin = new CControleLogin();
if (controleLogin.PesquisarLogin(txtLogin.getText(), String.valueOf(jpsSenha.getPassword())).size() == 1) {
new CFPrincipal().setVisible(true);
dispose();
} else {
JOptionPane.showMessageDialog(null, "Login ou senha não corespondem!", "Login invalido.", JOptionPane.WARNING_MESSAGE);
txtLogin.requestFocus();
}
}
Obrigado kenneth, já me ajuda e muito sua explicação, gostaria se possível de saber como faço para atribuir esses valores do ArrayList a algumas variáveis do sistema, em principio o ArrayList esta passando alguns parâmetros como, nome do funcionário logado, cargo, código etc…
Se eu entendi direito, voce quer fazer um login?
Se eh essa a ideia, tu nao precisa de um ArrayList…
Voce pode so carregar o CFModeloLogin do banco, e passar
este objeto ao invez da ArrayList pro CFPrincipal…
A menos que nao seja um login, e que vc queira pegar mais de um usuario…
Vou explicar o que quero fazer, pois acredito que fique mais fácil^^ só postar código e esperar que você adivinhe o que quero é complicado.
Primeiramente estou trabalhando em um projeto (TCC) que é um Sistema para gerenciar o empréstimo de livros etc de uma biblioteca.
em alguns momentos ( reserva, renovação e devolução dos livros eu quero gravar quem foi o funcionario responsavel por esta tranzação ).
Então…
O que tenho é um login que me retorna um uma “lstLogin” , o que eu faço é verificar se esta é == 1 ( ou seja que retorno um funcionário valido para o login do sistema )
como já visto no código acima do CFronteiraLogin
ao iniciar o CFronteiraPrincipal, gostaria de passar alguns parâmetros para ele como, por exemplo, o nome completo do funcionário, o código dele no banco etc, para quando necessário (no caso as transações já descritas) eu ter o código do funcionário por exemplo, para gravar no banco ( um foreign key ) informando quem emprestou tal livro.
Bom, eu faria da forma como te falei… Na tela de login, recuperaria do banco
o objeto Usuario, com seu nome, etc e tudo mais… E passaria so este objeto
para a tela principal.
Dentro desta tela, voce pode usar os dados da forma como quiser, so fazendo os get’s necessarios…
Algo como:
// ... tela de login...
Usuario user = <recuperar do banco>;
CFPrincipal principal = new CFPrincipal(user);
E dentro deste objeto principal (CFPrincipal)
// declara um objeto Usuario aqui
Usuario user = null;
// Construtor
public CFPrincipal(Usuario usuario){
this.user = usuario;
}
// e quando vc precisar...
private void finalizaEmprestimo(){
// eh so exemplo de uso
System.out.println("Emprestimo realizado por " + this.user.getNome());
}