Olá a todos.
Estive analisando alguns artigos sobre versionamento de classes utilizando Serializable e surgiu algumas dúvidas, sendo elas:
-
Quando serializo (se esta for a tradução) uma classe, quais são os possíveis impactos que esta virá a sofrer ao utilizar esta interface?
-
Se há um impacto que se faça necessário criar controles para gerenciá-la, quais os mais necessários?
-
Com uma classe com essas características, é possível instanciá-la normalmente como uma classe default para aplicações para web ?
Agradeço a todos pela atenção.
Ederson.
As únicas consequências de se implementar Serializable que eu conheço são as seguintes:
-
posso utilizar os métodos writeObject e readObject em objetos criados com essas classes e enviá-lo para um arquivo, ou via RMI, etc;
-
seu eu tentar ler dados serializados por uma versão antiga da classe, é lançada uma exceção.
Olá hipersoft.
Acho que fica muito mais fácil o entendimento se eu explicar o porquê da dúvida.
Na atual empresa onde estou prestando serviços está querendo que criemos um mecanismo para versionar as classes, para garantia de segurança nas versões lançadas no ambiente de produção e possíveis controles para a equipe de manutenção.
Tenho lido o seguinte site http://java.sun.com/products/jdk/1.2/docs/guide/serialization/spec/serialTOC.doc.html,e este informa diversas mudanças que temos que anexar a classe, como o atributo static final long serialVersionUID.
Com esta mudança e um valor para este atributo, consigo visualizar esta informação através do comando serialver.
A dúvida refere-se ao se colocar todas as classes do sistema desta forma, e estas serem acessados por jsp e tudo mais para um ambiente web, há impactos que invalidem esta mudança?
Att.
Ederson.