Variaveis globais em Java

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

[quote=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 [/quote]

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.

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

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

Rafael

[quote=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ê?[/quote]

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

:shock: :shock: :shock:

Mais uma opção: use static

…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

Valeu!