Classe não passa informações

2 respostas
R

Pessoal,
Estou com uma duvida sobre classes (java SE).

Meu sistema:
JFrame (login)
InfoLogin (Classe)
JFrame (Principal)
jFrame (Chamados tecnicos)

No meu sistema, a tela de login é a tela inicial.
Ao efetuar login no sistema, é feita uma leitura na tabela tblogin (mysql), e se encontrou, confere a senha. Se tudo estiver ok, o acesso é permitido, aparecendo a tela principal.

A Classe InfoLogin, possui diversos atributos (exemplo: login, perfil, ativo, ip, host).
Quando o acesso for permitido na tela de login, passo estas informações na classe InfoLogin, para que eu poss aproveitar em outro formulario, como por exemplo nas telas Principal e Chamados Técnicos.
Mas mesmo instanciando a Classe InfoLogin, eu nao consigo aproveitar estas informações.
Mesmo instanciando a classe InfoLogin onde eu desejo, as variaveis retorna null (metodo get), ou se for do tipo integer, retorna 0.
Mas ao testar o metodo get na tela de login, os valores retornam perfeitamente.
Estou utilizando o netbeans.

Estou programando a Classe InfoLogin seja um repositorio de informação, onde qualquer outra classe ou formulario (através do metodo get), busque informações nesta classe, ao inves de ficar repetindo o codigo.

Isto é possivel ?

2 Respostas

danilo.coppi

Por favor,

coloque pedaços do seu código para que possamos analisar direito o que está ocorrendo

R

danilo.coppi:
Por favor,

coloque pedaços do seu código para que possamos analisar direito o que está ocorrendo

Classe InfoLogin:

package Classes;

public class InfoLogin {

private int id_user;

private String login;

private String nome;

private int ativo;

public int perfil;

// INFORMACOES DA REDE

private String host;

private String ip;
public int getId_user() {
    return id_user;
}

    public void setId_user(int id_user) {
    this.id_user = id_user;
}

  public String getLogin() {
    return login;
}

    public void setLogin(String login) {
    this.login = login;
}

     public String getNome() {
    return nome;
}

    public void setNome(String nome) {
    this.nome = nome;
}

   public int getAtivo() {
    return ativo;
}

  public void setAtivo(int ativo) {
    this.ativo = ativo;
}

     public String getHost() {
    return host;
}

   public void setHost(String host) {
    this.host = host;
}

    public String getIp() {
    return ip;
}

    public void setIp(String ip) {
    this.ip = ip;
}

####################################################

Na tela de login, eu instancio a classe InfoLogin:

public class acesso extends javax.swing.JFrame {
InfoLogin dadoslogin = new InfoLogin();

public acesso() {

initComponents();

setLocationRelativeTo(null);

this.hostIP();

dadoslogin = new InfoLogin();


Este é o código do botão “efetuar login”
A rotina faz um resultset no mysql, e confere se o login e senha existe, caso exista, armazena as informações em um Array, e depois passo as informações para o metodo set da instancia da classe InfoLogin:

String[] dados = new String[5];

dados[0] = resultado.getString(id_login);

dados[1] = resultado.getString(login);

dados[2] = resultado.getString(nome);

dados[3] = resultado.getString(ativo);

dados[4] = resultado.getString(perfil);

dadoslogin.setId_user(Integer.parseInt(dados[0]));

dadoslogin.setLogin(dados[1]);

dadoslogin.setNome(dados[2]);

dadoslogin.setAtivo(Integer.parseInt (dados[3]));

dadoslogin.setPerfil(Integer.parseInt (dados[4]));
Os comandos abaixo, na propria tela de login, eu consigo ver os dados que passei para a classe InfoLogin:

System.out.println("Id USER: "+dadoslogin.getId_user());

System.out.println("USER: "+dadoslogin.getLogin());

Para pegar as informações de host e ip, eu uso outro metodo, dentro do proprio JFrame login, e armazeno no metodo set da classe InfoLogin.

Minha duvida é, mesmo instanciando a classe InfoLogin em outro JFrame, eu não consigo ver os dados que armazenei na tela de login.
Gostaria que as informações ficassem gravadas nas variaveis da classe InfoLogin, e que eu pudesse recupera-las em outra classe ou JFrame.

Caso esteja faltando alguma informação, ou tenha alguma duvida, peço que me comunique que faço as correções.
Obrigado!

Criado 10 de abril de 2011
Ultima resposta 10 de abr. de 2011
Respostas 2
Participantes 2