Está en la página 1de 9

Capítulo 8: Hilos y concurrencia

Capítulo 9: Archivos y serialización

Capítulo 10: Java Database Connectivity (JDBC)

9
Archivos y serialización

Java Fundamentals Developer

Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Objetivos

Al finalizar el capítulo, el alumno logrará:

• Utilizar los archivos para almacenar datos en el disco duro.


• Usar la bitácora de sucesos con objetos Logging.

9-2 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 1


Agenda

• Conceptos generales
• Archivos secuenciales o de texto
• Archivos de acceso aleatorio o binario
• La interfaz Serializable
• Logging: niveles, formatos y configuraciones

9-3 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Conceptos generales: archivos

• Los archivos también denominados ficheros son una


colección de información (datos relacionados entre sí),
localizada o almacenada como una unidad en alguna
parte de la computadora.

9-4 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 2


Conceptos Generales: características de los
archivos
• Independencia de las informaciones respecto de los
programas.
• La información almacenada es permanente.
• Un archivo puede ser accedido por distintos programas en
distintos momentos.
• Gran capacidad de almacenamiento.

9-5 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Archivos secuenciales o de texto

• La característica más importante de esta técnica de


organización de archivos es que solo permite el acceso
secuencial, es decir, para accesar al registro k, se deben
recorrer los k-1 registros anteriores.
• Esta característica impide que el archivo secuencial se
use en procesos en línea debido a que no se pueden
consultar rápidamente los registros, sin embargo, muestra
buen rendimiento en procesos en lote donde se aprovecha
la capacidad para accesar al siguiente registro
rápidamente.

9-6 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 3


Ejercicio Nº 9.1: Crear una aplicación para grabar
y leer información en un archivo
Con este ejercicio podemos ver como leer el contenido de un
archivo y grabarlo en otro.

Al finalizar el laboratorio, el alumno logrará:

• Transferir información de un archivo a otro.


• Usar excepciones.

9-7 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Archivos de acceso aleatorio o binario

• . Permiten situarse en cualquier punto del archivo para


actualizar ciertos valores.
• La clase Java RandomAccessFile del paquete java.io
implementa un archivo de acceso aleatorio, puede ser
utilizado tanto para lectura como escritura de bytes.
• Todo objeto, instancia de RamdomAccessFile, soporta el
concepto de puntero que indica la posición actual dentro
del archivo. Es un entero que empieza en 0 y se mide en
bytes.

9-8 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 4


Ejercicio Nº 9.2: Crear una aplicación para grabar
y leer información aleatoria
Leer un archivo con contenido y grabar al final del archivo.
Mostrar el contenido del archivo al inicio y al agregar la nueva
información.

Al finalizar el laboratorio, el alumno logrará:

• Uso de RamdomFile, métodos seek y read.

9-9 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

La Interfaz serializable

• La serialización es la transformación de un objeto en una


secuencia de bytes que pueden ser posteriormente leídos
para reconstruir el objeto original.

• El objeto serializado pueda guardarse en un fichero o


puede enviarse por red para reconstruirlo en otro lugar.

• Puede crearse en un sistema Windows y enviarlo, por


ejemplo, a otro sistema que utilice Linux.

9 - 10 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 5


Ejercicio Nº 9.3: Crear una aplicación para
serializar objetos
Crea una aplicación para serializar objetos, esto permite que la
información de un objeto pueda ser volcado a un fichero.

Al finalizar el laboratorio, el alumno logrará:

• Aprender el uso de la interfaz serializable.

9 - 11 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Logging: niveles, formatos y configuraciones

• Los objetos LOG son usados para enviar mensajes sobre


las excepciones, advertencias o información sobre
ocurrencias del sistema.

• En Java la funcionalidad para operaciones LOG esta


implementada en el paquete java.util.logging.

• Los mensajes log pueden ser enviados a diversos


dispositivos, como a consola, archivos log, base de datos,
y otros.

9 - 12 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 6


Ejercicio Nº 9.4: Enviar mensajes Log a la consola
y a archivo en disco duro
Crear una aplicación para enviar mensajes log a consola y a
disco (mediante archivos log).

Al finalizar el laboratorio, el alumno logrará:

• Usar bitácora de sucesos con objetos Logging.

9 - 13 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Lecturas adicionales

Para obtener información adicional, puede consultar:

http://www.nebrija.es/~oruano/java/05%20Gestion%20de%20fi
cheros%20de%20texto%20en%20Java.pdf

9 - 14 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 7


Resumen

En este capítulo, usted aprendió:

• Un archivo secuencial se usa en la programación de


computadoras para indicarle que lea una entrada o escriba
una salida en archivos de disco.
• Los archivos de acceso aleatorio son más versátiles,
permiten acceder a cualquier parte del fichero en cualquier
momento, como si fueran arrays en memoria.

9 - 15 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Resumen

En este capítulo, usted aprendió:

• Un objeto serializable es un objeto que se puede convertir


en una secuencia de bytes mediante java.io.Serializable.
• Esta interfaz no define ningún método. Simplemente se
usa para 'marcar' aquellas clases cuyas instancias pueden
ser convertidas a secuencias de bytes (y posteriormente
reconstruídas).
• Objetos tan comunes como string, vector o arraylist
implementan Serializable, de modo que pueden ser
serializados y reconstruidos más tarde.

9 - 16 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 8


Tarea Nº 9: Gestionar ficheros con Java

Manejar archivos a través del Java

Al finalizar el laboratorio, el alumno logrará:

• Crear un log en el que se guarden las modificaciones que se


le hagan al archivo principal:
- Leer el archivo principal
- Hacer cambios
- Guardar los cambios en el log
- Leer el log

9 - 17 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Java Fundamentals Developer 9

También podría gustarte