Gravando Informações em Classe

Deixe esses campos como Estáticos.

não deu certo

Não seria:

?

Pelo que você postou você esta salvando em um objeto e tenta ler em outro

espero ter ajudado

Não aquele l e porque estou em outra classe, instanciei renomeie para l somente

Se sua aplicação é desktop, da uma olhada na API preferences do java:

https://docs.oracle.com/javase/8/docs/technotes/guides/preferences/index.html

Basicamente o que ele faz é gravar dados “chave-valor” no registro da máquina. Não sei se é bem esse o seu problema, talvez resolva.

Da uma olhada na sugestão que dei em outro tópico:

Pra que isso jovem? :frowning:

1 curtida

Poisé muito estranho eu trabalho com MVC todo dia não funcionou por nada tive criar uma varivel Static pra dar certo não deu certo por Get Set por nada affs

Acho que entendi o problema, vc tá criando um objeto, e setando.
e quer que de outras classes busque as informações, mas aposto que você está usando ClasseLogin l = new ClasseLogin();
e tentando l.getUsuario();
sendo assim, não é a mesma classe de quando você setou.
“Não aquele l e porque estou em outra classe, instanciei renomeie para l somente” como você instanciou?
se não foi l = lLogin então não está renomeando, tá usando outro.

Não estou setando lLogin atraves do JframeLogin então gravo as informações la

lLogin l = new lLogin();

l.set…

depois vou em outra classe e tento ler a classe l Login que eu preenchi

Quando você cria uma nova instância de uma classe, então você está criando um novo objeto daquela classe.

Pelo que entendi, você quer armazenas as informações de login nessa classe, então acessa-las
a partir de outras classes. Ou não?

Se for o caso, deixe os métodos atributos como estáticos. Sendo os métodos get e set como públicos para alterar suas propriedades quando necessárias.

Me perdoem se não compreendi o problema do amigo.

isso mesmo amigo eu quero deixar as informações nessa classe quando precisar acesso e leio as informações mais de uma vez até que o projeto seja fechado e inicie outro login

consgui resolver de uma forma mas n sei se e o correto

public static String usuario;

usuario = lLogin.usuario

Não faz sentido utilizar atributos estáticos e públicos neste caso.
Você simplesmente deveria manipular a instância de login que foi criada.
Se você postar o código das classes relacionadas, fica mais fácil te orientar da melhor forma.

classe onde quero gravar as informações e serem lidas a qualquer momento

**
*

  • @author Administrador
    */

public class DadosLogin {

String codEmpresa;
String Usuario;
String Senha;
String NomeEmprea;

public  String User;
public  String psw;
public  String Emp;

public String getNomeEmprea() {
    return NomeEmprea;
}

public void setNomeEmprea(String NomeEmprea) {
    this.NomeEmprea = NomeEmprea;
}

public String getCodEmpresa() {
    return codEmpresa;
}

public void setCodEmpresa(String codEmpresa) {
    this.codEmpresa = codEmpresa;
}

public String getUsuario() {
    return Usuario;
}

public void setUsuario(String Usuario) {
    this.Usuario = Usuario;
}

public String getSenha() {
    return Senha;
}

public void setSenha(String Senha) {
    this.Senha = Senha;
}

}

Pessoal resolvi muito obrigado pela ajuda de vcs

public static String codEmpresa;
public static String Usuario;
public static String Senha;
public static String NomeEmprea;

public String getNomeEmprea() {
    return NomeEmprea;
}

public void setNomeEmprea(String NomeEmprea) {
    this.NomeEmprea = NomeEmprea;
}

public String getCodEmpresa() {
    return codEmpresa;
}

public void setCodEmpresa(String codEmpresa) {
    this.codEmpresa = codEmpresa;
}

public String getUsuario() {
    return Usuario;
}

public void setUsuario(String Usuario) {
    this.Usuario = Usuario;
}

public String getSenha() {
    return Senha;
}

public void setSenha(String Senha) {
    this.Senha = Senha;
}

deixei as variaveis a cima como static e deu certo, a mesma coisa que o JosimarNew tinha sitado tbm

Sua arquitetura está errada.
Você tem atributos estáticos e getters e setters não estáticos, não faz o menor sentido.
O que você precisa fazer é passar a instância de DadosLogin para os objetos que dependem dela.

1 curtida

Eu fiz isso, porem sem sucesso fiz de varias formas e não deu certo, tbm não sei oque pode estar errado
porque estou escrevendo do jeito que sempre fiz do jeito q estudei em livros cursos certificações e mesmo assim ainda não deu mas dessa forma sim eu não mexi em nada somente puis static e funcionou agora pode estar errado algo sim pode porq eu tenho um projeto completo ERP e nunca usei static para mandar dados para controller e pegar de volta na DAO e muito estranho

Me ajudem no outro topico que abrir aplicação consumindo muita memoria try icon com timer fica capturando dados do banco de dados a memoria vai subindo subindo ate ser bloqueado a aplicação

Eu costumo fazer assim amigo.

Eu deixo na classe de User, apenas um campo id desse usuário como publico e estático. Quando faço login passo o id do usuário logado para esse campo. Quando quero obter qualquer informação desse usuário logado, apenas procuro o usuário logado através do id no banco de dados através de minha classe DAO.

Esse campo id ficará visível e estático para todo o programa.

1 curtida