Diferencia entre revisiones de «Prog Acceso a base de datos de objetos»
Ir a la navegación
Ir a la búsqueda
(No se muestran 6 ediciones intermedias del mismo usuario) | |||
Línea 46: | Línea 46: | ||
* Más información sobre la API JPA [https://www.ibm.com/support/knowledgecenter/es/SSAW57_8.5.5/com.ibm.websphere.wlp.nd.doc/ae/cwlp_jpa.html en este enlace]. | * Más información sobre la API JPA [https://www.ibm.com/support/knowledgecenter/es/SSAW57_8.5.5/com.ibm.websphere.wlp.nd.doc/ae/cwlp_jpa.html en este enlace]. | ||
+ | * Comparativa de rendimientos de diferentes bases de datos que implementan JPA [http://www.jpab.org/Hibernate.html en este enlace]. | ||
+ | |||
+ | * Con JPA se puede hacer un 'mapeo' automático entre una base de datos relacional y clases en Java. | ||
+ | : Podéis seguir [https://www.oscarblancarteblog.com/tutoriales/java-persistence-api-jpa/ este manual] para implementarlo. | ||
+ | |||
+ | * ObjecDB puede utilizarse para: | ||
+ | :* Acceder a bases de datos ObjectDB directamente desde Java, abriendo dicha base de datos de modo 'exclusivo' no permitiendo conexiones múltiples. | ||
+ | :* Acceder a bases de datos ObjectDB desde un entorno cliente/servidor, en el que la base de datos está asociada a un servidor (con un puerto y dirección) y permite conexiones múltiples a través de la red. Más información [https://www.objectdb.com/java/jpa/tool/server en este enlace]. | ||
+ | |||
+ | <br /> | ||
+ | ==Explicación etiquetas Id y GeneratedValue en JPA== | ||
+ | |||
+ | * Si seguisteis el ejemplo anterior, cuando define el modelo, agrega a uno de los campos (campo id) las siguientes etiquetas: | ||
+ | :* @Id | ||
+ | :* @GeneratedValue | ||
+ | |||
+ | : Podéis consultar cual es su utilidad [https://www.oscarblancarteblog.com/2016/11/01/definir-llave-primaria-id/ en este enlace]. | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | |||
+ | |||
+ | ==Operaciones CRUD (Create, Read, Update, Delete) con JPA== | ||
+ | |||
+ | |||
+ | * Podéis consultar [https://www.objectdb.com/java/jpa/persistence/crud este enlace]. | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ==Operaciones SELECT con Parámetros== | ||
+ | |||
+ | * Podéis consultar como hacer un select con parámetros en [https://www.objectdb.com/java/jpa/query/parameter este enlace]. | ||
+ | |||
+ | : Indicar que si una clase tiene como atributo un objeto de otra clase, podemos hacer la consulta de la forma: SELECT a FROM Clase1 a WHERE a.objeto.atributo = :valor | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ==Ejemplo completo de uso de JPA con ObjectDB== | ||
+ | |||
+ | * Podéis consultarlo [https://dzone.com/articles/getting-started-jpa-and en este enlace]. | ||
Revisión actual del 17:50 16 may 2018
Sumario
Introducción
- Una Base de Datos Orientada a Objetos (BDOO o Object Oriented DataBase OODB en inglés) es una base de datos en la que vamos a poder guardar objetos (en vez de tablas que es lo que hacen las bases de datos relacionales).
- Podemos ver en este enlace una relación de bases de datos orientada a objetos disponibles.
- Aunque no es de este tema, debemos diferencia una base de datos de un Sistema Gestor de Base de Datos. Podéis consultar este enlace.
- El uso de bases de datos nos van a permitir guardar la información y que esta se mantenga en el tiempo para poder ser utilizada posteriormente. Este concepto se denomina persistencia de datos.
Posibles base de datos de Objetos
- Podemos ver una comparativa de bases de datos de objetos en este enlace de la WIKIPEDIA.
- db4o: La última versión con licencia GPL es del año 2011. Dejó de desarrollarse en Octubre del 2014. Ahora mismo no funciona ningún enlace a su sitio web.
- HypergraphDB.
- Virtuoso Universal Server.
- Object Database: Se puede probar con un máximo de 10 clases y un millón de objetos. Más información en este enlace.
- velocitydb: Necesita definir el modelo de datos en Windows ya que funciona con .NET. Después es posible conectarse a la base de datos sin necesidad de ser Windows el sistema operativo empleado.
- eyedb: Desde Mayo del 2009 no han sacado nuevas versiones.
- mongodb: Almacenamiento en la nube.
Como usar db4o
- Podéis consultar este enlace.
Como usar ObjectDB con JPA
- Consultar este enlace.
- Más información sobre la API JPA en este enlace.
- Comparativa de rendimientos de diferentes bases de datos que implementan JPA en este enlace.
- Con JPA se puede hacer un 'mapeo' automático entre una base de datos relacional y clases en Java.
- Podéis seguir este manual para implementarlo.
- ObjecDB puede utilizarse para:
- Acceder a bases de datos ObjectDB directamente desde Java, abriendo dicha base de datos de modo 'exclusivo' no permitiendo conexiones múltiples.
- Acceder a bases de datos ObjectDB desde un entorno cliente/servidor, en el que la base de datos está asociada a un servidor (con un puerto y dirección) y permite conexiones múltiples a través de la red. Más información en este enlace.
Explicación etiquetas Id y GeneratedValue en JPA
- Si seguisteis el ejemplo anterior, cuando define el modelo, agrega a uno de los campos (campo id) las siguientes etiquetas:
- @Id
- @GeneratedValue
- Podéis consultar cual es su utilidad en este enlace.
Operaciones CRUD (Create, Read, Update, Delete) con JPA
- Podéis consultar este enlace.
Operaciones SELECT con Parámetros
- Podéis consultar como hacer un select con parámetros en este enlace.
- Indicar que si una clase tiene como atributo un objeto de otra clase, podemos hacer la consulta de la forma: SELECT a FROM Clase1 a WHERE a.objeto.atributo = :valor
Ejemplo completo de uso de JPA con ObjectDB
- Podéis consultarlo en este enlace.
-- Ángel D. Fernández González -- (2017).