Primeros pasos • Documentación • Aplicaciones de ejemplo • Problemas
ObjectBox Java es una base de datos vectorial y una base de datos en el dispositivo liviana pero potente diseñada específicamente para aplicaciones Java y Kotlin . Almacene y administre datos sin esfuerzo en su aplicación Android o JVM Linux, macOS o Windows con ObjectBox. Administre fácilmente datos vectoriales junto con sus objetos y realice búsquedas vectoriales ultrarrápidas en el dispositivo para potenciar sus aplicaciones con RAG AI, IA generativa y búsqueda de similitudes. Disfrute de una velocidad excepcional, un uso de recursos respetuoso con la batería y un desarrollo respetuoso con el medio ambiente.
// Java
Playlist playlist = new Playlist ( "My Favorites" );
playlist . songs . add ( new Song ( "Lalala" ));
playlist . songs . add ( new Song ( "Lololo" ));
box . put ( playlist );
➡️ Más detalles en los documentos
// Kotlin
val playlist = Playlist ( " My Favorites " )
playlist.songs.add( Song ( " Lalala " ))
playlist.songs.add( Song ( " Lololo " ))
box.put(playlist)
? Primera base de datos de vectores en el dispositivo: ¿administra fácilmente datos vectoriales y realiza búsquedas rápidas de vectores? Alto rendimiento: velocidad excepcional, superando a alternativas como SQLite y Realm en todas las operaciones CRUD.
Uso eficiente de recursos: consumo mínimo de CPU, energía y memoria para máxima flexibilidad y sostenibilidad.
? Relaciones de objetos integradas: soporte integrado para relaciones de objetos, lo que le permite establecer y gestionar fácilmente relaciones entre objetos.
? Facilidad de uso: API concisa que elimina la necesidad de consultas SQL complejas, lo que le ahorra tiempo y esfuerzo durante el desarrollo.
Para proyectos de Android, agregue el complemento ObjectBox Gradle a su build.gradle
raíz:
buildscript {
ext . objectboxVersion = " 4.0.3 "
repositories {
mavenCentral()
}
dependencies {
classpath( " io.objectbox:objectbox-gradle-plugin: $o bjectboxVersion " )
}
}
Y en build.gradle
de tu aplicación, aplica el complemento:
// Using plugins syntax:
plugins {
id( " io.objectbox " ) // Add after other plugins.
}
// Or using the old apply syntax:
apply plugin : " io.objectbox " // Add after other plugins.
Cree una clase de objeto de datos @Entity
, por ejemplo "Lista de reproducción".
// Kotlin
@Entity data class Playlist ( ... )
// Java
@Entity public class Playlist { .. . }
Ahora cree el proyecto para permitir que ObjectBox genere la clase MyObjectBox
por usted.
Prepare el objeto BoxStore una vez para su aplicación, por ejemplo, en onCreate
en su clase Aplicación:
boxStore = MyObjectBox . builder (). androidContext ( this ). build ();
Luego obtenga una clase Box
para la clase de entidad Playlist:
Box < Playlist > box = boxStore . boxFor ( Playlist . class );
El objeto Box
le brinda acceso a todas las funciones principales, como put
, get
, remove
y query
.
Para obtener más información, consulte los documentos.
ObjectBox es una base de datos NoSQL Java diseñada para el almacenamiento de datos local en dispositivos con recursos restringidos, priorizando la funcionalidad fuera de línea. Es una opción inteligente y sostenible para la persistencia de datos locales en aplicaciones Java y Kotlin. Ofrece eficiencia, facilidad de uso y flexibilidad.
Optimizado para ofrecer velocidad y un consumo mínimo de recursos, ObjectBox es una solución ideal para dispositivos móviles. Tiene un rendimiento excelente y al mismo tiempo minimiza el uso de CPU, RAM y energía. ObjectBox supera a SQLite y Realm en todas las operaciones CRUD (Crear, Leer, Actualizar, Eliminar). Consulte nuestro repositorio de aplicaciones de evaluación comparativa de rendimiento.
Con su API concisa en el lenguaje nativo, ObjectBox simplifica el desarrollo al requerir menos código en comparación con SQLite. Opera en objetos planos (POJO) con relaciones integradas, lo que elimina la necesidad de administrar filas y columnas. Este enfoque es eficaz para manejar grandes volúmenes de datos y permite modificaciones sencillas del modelo.
? Consultas: filtre datos según sea necesario, incluso entre relaciones
Multiplataforma: soporta Android y JVM en Linux (también en ARM), Windows y macOS
? Escalable: manejo fácil y eficiente de recursos con millones de objetos
? Escrito estáticamente: comprobaciones y optimizaciones en tiempo de compilación
? Migraciones automáticas de esquemas: no se necesitan scripts de actualización
Y mucho más que solo persistencia de datos
ObjectBox Sync: mantiene los datos sincronizados entre dispositivos y servidores
ObjectBox TS: extensión de series temporales para datos basados en el tiempo
❤ ¡ Cuéntanos lo que piensas! Comparta sus pensamientos a través de nuestro formulario de comentarios anónimos.
En ObjectBox, nos dedicamos a brindar alegría y deleite a los desarrolladores de aplicaciones al brindarles API intuitivas y divertidas de codificar. Realmente queremos saber de usted: ¿Qué es lo que le encanta de ObjectBox? ¿Qué se podría mejorar? ¿Dónde enfrenta los desafíos en el desarrollo cotidiano de aplicaciones?
Esperamos ansiosamente sus comentarios y solicitudes, así que no dude en comunicarse con nosotros:
¡Gracias! Mantente actualizado con nuestro blog.
Para conocer cambios notables e importantes en nuevas versiones, lea el registro de cambios.
ObjectBox admite múltiples plataformas e idiomas. Además de lenguajes basados en JVM como Java y Kotlin, ObjectBox también ofrece:
Copyright 2017-2024 ObjectBox Ltd. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Tenga en cuenta que esta licencia se aplica únicamente al código de este repositorio. Consulte nuestro sitio web para obtener detalles sobre todas las licencias para componentes de ObjectBox.