Como Converter String "br.com.pacote.Minhaclasse@5645645" para Objeto?

é possível converter uma String tipo “br.com.pacote.Minhaclasse@5645645” para um objeto de Minhaclasse ??

tenho essa string armazenada no banco, com parte de uma auditoria, dae queria saber se tem como recuperar esse objeto ou se é apenas uma string mesmo.

A resposta simples é “não tem como”.

A resposta completa é “reimplemente o método public String toString() dessa classe, para que possa fazer algum sentido; com o que você tem, é impossível obter o objeto original”.

já desconfiava que era impossível mesmo… mas tinha que pesquisar pra ver … ehehe

valeo

[quote=pugnator]
é possível converter uma String tipo “br.com.pacote.Minhaclasse@5645645” para um objeto de Minhaclasse ??

tenho essa string armazenada no banco, com parte de uma auditoria, dae queria saber se tem como recuperar esse objeto ou se é apenas uma string mesmo.[/quote]

Se todas Strings tiverem uma classe correspondente, vc descarta “@alguma_coisa
E por reflection consegue instanciar.
Mas cuidado vc pode ganhar uma ClassNotFoundException, ou
IllegalAccessException

int pos = "br.com.pacote.Minhaclasse@5645645".indexOf("@");
	Class suaClass = (Class) Class.forName("br.com.pacote.Minhaclasse@5645645".substring(0, pos)).newInstance();

http://www.guj.com.br/articles/10

Mas assim você terá um objeto vazio (sem dados), o que obviamente não é isso que ele quer. :slight_smile:

é, eu queria o objeto preenchido

mas agora ta salvando no banco o objeto como stream e ta recuperando preenchido…