Seguinte, tenho uma aplicação que guarda um objeto em uma classe singleton, ou seja, só tenho uma instância do objeto que todo mundo compartilha.
Bom, essa aplicação é web e quando as pessoas acessam, eu envio esse objeto pelo request, então ele está sempre pra cá e pra lá, para cada usuário que acessa o site. Fiz isso para não fazer vários selects na tabela, pois os dados só mudam uma vez por semana.
Bom, a pergunta é: eu fazendo isso, enviando o objeto pro request, eu só estou apontando para o endereço da memória em que o objeto está certo ? A minha JVM não vai inflar ou dar problema por causa disso, certo ? Há problemas nesta prática ?
Se eu entendi direito o que você está fazendo, não precisa colocar nenhuma referência no request. Na verdade se é um Singleton, então você não precisa enviar pelo request, basta apenas acessar o metodo estático de acesso, que normalmente é criado. Algo como:
basta então, de qualquer lugar, para ter acesso ao singleton, fazer Singleton s = Singleton.getInstancia(); não é necessário colocar nada no request.
De resto é isso mesmo que você pensou, você está apenas enviando a referencia, desde que o sistema seja não distribuído ou clusterizado, é claro.
Link_pg
Olá!
Se é realmente um Singleton então o objeto é o mesmo… logo a posição de memória é a mesma…
Abraços
rbonjour
fkimura:
Se eu entendi direito o que você está fazendo, não precisa colocar nenhuma referência no request. Na verdade se é um Singleton, então você não precisa enviar pelo request, basta apenas acessar o metodo estático de acesso, que normalmente é criado. Algo como:
basta então, de qualquer lugar, para ter acesso ao singleton, fazer Singleton s = Singleton.getInstancia(); não é necessário colocar nada no request.
De resto é isso mesmo que você pensou, você está apenas enviando a referencia, desde que o sistema seja não distribuído ou clusterizado, é claro.
E tem como fazer isso com JSTL ? Pq não uso nada de código java nos meus JSP, só html e jstl.....