Variaveis globais em Java

7 respostas
N

Galera,

Como tratar em sistemas Java a necesidade de trabalhar com variaveis globais?
Por exemplo: após o login do usuario, preciso guardar informações como nome, username, matricula, etc. para que possa utilizá-las no restante do sistema, filtrando querys, apresentando em tela, etc.
Usa-se variáveis de sessão ou o quê?

sds
Nilson Costa

7 Respostas

Lucas_Teixeira

Nilson Costa:
Galera,

Como tratar em sistemas Java a necesidade de trabalhar com variaveis globais?
Por exemplo: após o login do usuario, preciso guardar informações como nome, username, matricula, etc. para que possa utilizá-las no restante do sistema, filtrando querys, apresentando em tela, etc.
Usa-se variáveis de sessão ou o quê?

sds
Nilson Costa

Voce provavelmente terá um objeto que representa este usuario, com seu nome, matricula, usuario e tudo mais né?

Joga ele na sessão… Acho a coisa mais sensata a se fazer.

W

não tem variaveis globais em java, vc pode usar uma pattern Singleton que tem um comportamento parecido.

mas para o seu caso e melhor criar um Bean(objeto com os gets e sets) e coloca na sessao

Rafael_Steil

Em ambiente web? coloque na session ( request.getSession().setAttribute() ). Se for aplicacao Swing, voce pode usar alguma instancia static.

Rafael

kuchma

Nilson Costa:
Como tratar em sistemas Java a necesidade de trabalhar com variaveis globais?
Por exemplo: após o login do usuario, preciso guardar informações como nome, username, matricula, etc. para que possa utilizá-las no restante do sistema, filtrando querys, apresentando em tela, etc.
Usa-se variáveis de sessão ou o quê?

Web? Se for, use a sessao para guardar informacoes relativas ao usuario (como esse caso citado por voce). Para informacoes realmente globais (exemplo besta: quantidade de usuarios online), use o contexto da aplicacao.

Marcio Kuchma

renatosilva

:shock: :shock: :shock:

Mais uma opção: use static

pcalcado

…e criar mais um bandod e singletons que não deveriam ter existido :wink:

Não use Singleton para variáveis globais. Sigleton é feito para cotnrolar a instanciação de um objeto, não para um JNDI leve.

http://c2.com/cgi/wiki?SingletonsAreEvil

[]s

N

Valeu!

Criado 27 de janeiro de 2005
Ultima resposta 27 de jan. de 2005
Respostas 7
Participantes 7