Feb 012013
 
Artículo Java

En nuestro anterior artículo de Introducción a Berkeley DB hemos presentado este sistema de base de datos y hemos comentado sobre las características y funcionalidad que ofrece. En éste vamos a ver ejempos prácticos de uso de Berkeley DB en un programa Java.

Versiones de la librería java para Berkeley DB

Existen dos versiones distintas de la librería Java para Berkeley DB.

Berkeley DB standard

Por una parte, el package com.sleepycat.db es un interfaz con la librería del sistema utilizada por otros lenguajes como C, Perl y PHP. Esto asegura la compatibilidad, de manera que una base de datos Berkeley previamente existente creada por un programa escrito en otro lenguaje, puede ser utilizada por un programa Java, y viceversa.

Berkeley DB Java Edition

Por otra parte el package com.sleepycat.je es una implementación 100% Java, que asegura la portabilidad entre distintas plataformas.

Desde el punto de vista del programador, la principal diferencia está en que en Berkeley DB Java Edition es obligatorio es uso de la clase
com.sleepycat.je.Environment para crear y abrir una base de datos, mientras que en Berkeley DB standard es opcional.

Por lo demás, el código es casi siempre idéntico, sustituyendo en las sentencias «import» las referencias a las clases «com.sleepycat.je.*» por «com.sleepycat.db.*».

En este artículo presentamos ejemplos de uso de Berkeley DB standard.

Instalación

Es posible instalar Berkeley DB a partir de cero, descargándolo desde la página de descarga de Berkeley DB de Oracle, y procediendo a su compilación.

Sin embargo, para la mayoría de las plataformas existen paquetes binarios disponibles que resultan mucho más cómodos de instalar.

Por ejemplo, en Debian, Ubuntu y otras distribuciones Linux, podemos utilizar apt-get para instalar la librería del sistema y la librería java:

una vez realizada la instalación, podemos comprobar que la librería java (que deberemos incluir en el classpath a la hora de compilar y ejecutar nuestro programa) se encuentra bajo «/usr/share/java»:

Creación, apertura y cierre de una base de datos

El siguiente código de ejemplo «pruebaBDB.java» abre una base de datos Berkeley contenida en un fichero «prueba.db».

para ello se crea un objeto «Database» con una llamada a «new Database()», en la que pasamo un argumento «dbConfig» con la configuración de la base de datos. Al establecer «setAllowCreate(true)» en la configuración, indicamos que si la base de datos no existe, se cree una nueva.

Al terminar de utilizarla, debemos cerrar la base de datos, para lo cual podemos utilizar el siguiente código de ejemplo:

Para compilar y ejecutar el programa «PruebaBDB.java», utilizamos los comandos:

Escribir registros en la base de datos

Para escribir un registro en la base de datos hacemos una llamada al método «put()» de la clase Database. A este método debemos pasarle la clave y el valor del registro en forma de objetos de la clase «DatabaseEntry».

El siguiente código de ejemplo es idéntico al código utilizado en Berkeley Java Edition, con la única diferencia de las sentencias import, que en este casos importan classes com.sleepycat.db.* en lugar de com.sleepycat.je.*

Leer registros de la base de datos

Para obtener un registro de la base de datos hacemos una llamada al método «get()» de la clase Database. Este método devuelve un objeto de la clase DataEntry, que deberemos convertir al tipo de objeto deseado.

También en este caso el código es igual que el que se utiliza en Berkeley Java Edition, con la única diferencia de las sentencias import.

Eliminar registros

Para eliminar un registro llamamos al método «delete» del objeto Database:

Recorrer todos los registros de la base de datos

Para procesar todo los registros, utilizamos un cursor:

 

Referencias

Getting Started with Berkeley DB

Indice de artículos sobre programación en lenguaje Java

 Publicado por en 5:36 pm

 Deja un comentario

(requerido)

(requerido)