Pool de Strings

3 respostas
jaboot

Caros,

Tenho algumas dúvidas em relação ao pool de strings do java. Estou recebendo algumas informações, alguns dados do usuário e veio também a senha do mesmo. Não gostaria de forma alguma que essa informação fosse para o pool.
A senha vem junto com vários outros dados, então não posso simplesmente transformar tudo em char[]. Acho que ficaria muito ruim para as coisas depois.

Dúvidas:
1 - O StringBuffer/StringBuilder vai para o pool?
2 - Existe ataque ao pool de Strings? Alguém conseguiria acessar essa informação?
3 - Existe alguma forma de dizer: quero que tudo isso vá para o pool, MENOS esta informação?

Valeu galera

3 Respostas

saoj

jaboot:
Caros,

Tenho algumas dúvidas em relação ao pool de strings do java. Estou recebendo algumas informações, alguns dados do usuário e veio também a senha do mesmo. Não gostaria de forma alguma que essa informação fosse para o pool.
A senha vem junto com vários outros dados, então não posso simplesmente transformar tudo em char[]. Acho que ficaria muito ruim para as coisas depois.

Dúvidas:
1 - O StringBuffer/StringBuilder vai para o pool?
2 - Existe ataque ao pool de Strings? Alguém conseguiria acessar essa informação?
3 - Existe alguma forma de dizer: quero que tudo isso vá para o pool, MENOS esta informação?

Valeu galera

Só vai pra o pool o que vc coloca entre ASPAS e o que vc chama intern().

Ataque pode existir a qualquer coisa.

Sim, chama intern nas strings que vc quer que vá para o pool.

jaboot

De acordo com o que você disse - então se eu fizer um Stringbuilder.toString() não vai para o pool, correto?

saoj

Correto. Vc teria que fazer assim: stringBuilder.toString().intern(). Aí iria.

Criado 16 de maio de 2012
Ultima resposta 16 de mai. de 2012
Respostas 3
Participantes 2