domingo, 28 de junio de 2015

SERIALIZACIÓN

¿QUE ES LA SERIALIZACIÓN?

La serialización de un objeto consiste  transformar un objeto q una secuencia de bytes que represente el estado de dicho objeto. 
Cuando el objeto ya está serializado se puede guardar en un fichero o puede enviarse a través de la red para reconstruirlo en otro lugar. 

Para que un objeto sea serializable basta con que implemente la interfaz Serializable. Como la interfaz Serializable no tiene métodos, para implementarla, solo debemos escribir implements Serializable . 



Para la implementacion de nuestro ejemplo debemos conocer que:

"Un ObjectOutputStream escribe tipos de datos primitivos y gráficos de objetos Java a un OutputStream
Los objetos pueden ser leidos(reconstituida ) utlizando un ObjectInputStream ."

Para comprender de mejor manera la serialización , lo explicaremos en el siguiente ejemplo:

el cual consta de 3 clases: Paciente , Aplicacion y  la AplicacionLectura.

Clase Paciente:

Creamos una clase Paciente a la cual vamos a implementar  Serialización.
para eso escribimos:  implements Serializable.
Luego implementamos cada una de las variables :


Implementacion de constructores :



Implementacion del toString, en el cual vamos a proporcionar todos los valores de cada uno de los atributos.

Clase Aplicacion:


En esta aplicación vamos a crear e inicializar 4 objetos del tipo Paciente con sus respectivos datos(documento,nombre,género ) .

luego vamos a crear un archivo llamado INFORMACION_PACIENTES.txt con el método FileOutputStream .
 Creamos un objeto llamado salida  del tipo ObjectOutputStream, el cual va a enviar a la salida el archivo de texto.




Al ejecutar el programa se creará automáticamente nuestro archivo.

Al abrir el archivo de texto se mostrará unos caracteres especiales (diferentes) esto se debe  a que lo que estamos envíando  son bytes  .




Clase AplicacionLectura:

Cuando el archivo ya este creado vamos a leerlo a través de el ArrayList de Paciente  en el cual  almacenaremos los diferentes valores de cada uno de los atributos , mediante la creación de un objeto del tipo ObjectInputStream.



Al  ejecutar nuestra aplicación , si no existió ninguna excepción previa , vamos a obtener la siguiente salida :







No hay comentarios:

Publicar un comentario