はじめに • ドキュメント • サンプルアプリ • 問題
ObjectBox Java は、 Java および Kotlinアプリケーション用に特別に設計された、軽量でありながら強力なオンデバイス データベースおよびベクター データベースです。 ObjectBox を使用すると、Android または JVM Linux、macOS、または Windows アプリにデータを簡単に保存および管理できます。オブジェクトと一緒にベクトル データを簡単に管理し、超高速のオンデバイス ベクトル検索を実行して、アプリに RAG AI、生成 AI、類似性検索を強化します。並外れた速度、バッテリーに優しいリソースの使用、環境に優しい開発をお楽しみください。
// Java
Playlist playlist = new Playlist ( "My Favorites" );
playlist . songs . add ( new Song ( "Lalala" ));
playlist . songs . add ( new Song ( "Lololo" ));
box . put ( playlist );
➡️ 詳細についてはドキュメントをご覧ください
// Kotlin
val playlist = Playlist ( " My Favorites " )
playlist.songs.add( Song ( " Lalala " ))
playlist.songs.add( Song ( " Lololo " ))
box.put(playlist)
?初のオンデバイス ベクトル データベース:ベクトル データを簡単に管理し、高速ベクトル検索を実行します。高いパフォーマンス:並外れた速度で、すべての CRUD 操作において SQLite や Realm などの代替手段を上回ります。
効率的なリソースの使用: CPU、電力、メモリの消費を最小限に抑え、最大限の柔軟性と持続可能性を実現します。
?組み込みオブジェクト関係:オブジェクト関係の組み込みサポートにより、オブジェクト間の関係を簡単に確立および管理できます。
?使いやすさ:複雑な SQL クエリの必要性を排除する簡潔な API により、開発中の時間と労力を節約できます。
Android プロジェクトの場合、ObjectBox Gradle プラグインをルートbuild.gradle
に追加します。
buildscript {
ext . objectboxVersion = " 4.0.3 "
repositories {
mavenCentral()
}
dependencies {
classpath( " io.objectbox:objectbox-gradle-plugin: $o bjectboxVersion " )
}
}
そして、アプリのbuild.gradle
にプラグインを適用します。
// 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.
データ オブジェクト クラス@Entity
を作成します (例: "Playlist")。
// Kotlin
@Entity data class Playlist ( ... )
// Java
@Entity public class Playlist { .. . }
次に、ObjectBox がMyObjectBox
クラスを生成できるようにプロジェクトを構築します。
たとえば、Application クラスのonCreate
で、アプリ用に BoxStore オブジェクトを一度準備します。
boxStore = MyObjectBox . builder (). androidContext ( this ). build ();
次に、Playlist エンティティ クラスのBox
クラスを取得します。
Box < Playlist > box = boxStore . boxFor ( Playlist . class );
Box
オブジェクトを使用すると、 put
、 get
、 remove
、 query
などのすべての主要な関数にアクセスできます。
詳細については、ドキュメントを確認してください。
ObjectBox は、リソースが制限されたデバイス上のローカル データ ストレージ用に設計された NoSQL Java データベースで、オフライン ファーストの機能を優先します。これは、Java および Kotlin アプリケーションでローカル データを永続化するための賢明で持続可能な選択肢です。効率性、使いやすさ、柔軟性を提供します。
速度とリソース消費を最小限に抑えるために最適化された ObjectBox は、モバイル デバイスにとって理想的なソリューションです。優れたパフォーマンスを実現しながら、CPU、RAM、電力の使用量を最小限に抑えます。 ObjectBox は、すべての CRUD (作成、読み取り、更新、削除) 操作において SQLite および Realm よりも優れたパフォーマンスを発揮します。パフォーマンス ベンチマーク アプリ リポジトリを確認してください。
ObjectBox は簡潔な言語ネイティブ API を備えているため、SQLite と比較して必要なコードが少なくなり、開発が簡素化されます。これは、組み込みのリレーションを使用してプレーン オブジェクト (POJO) を操作するため、行と列を管理する必要がありません。このアプローチは、大量のデータを処理するのに効率的であり、モデルの変更が容易になります。
?クエリ:リレーション間でも、必要に応じてデータをフィルタリングします。
マルチプラットフォーム: Linux (ARM も)、Windows、macOS で Android と JVM をサポート
?スケーラブル:数百万のオブジェクトをリソース効率よく簡単に処理
?静的型付け:コンパイル時のチェックと最適化
?自動スキーマ移行:更新スクリプトは不要
データの永続化だけではありません
ObjectBox Sync:デバイスとサーバー間でデータの同期を維持します。
ObjectBox TS:時間ベースのデータの時系列拡張
❤ご意見をお聞かせください。匿名フィードバック フォームを通じてご意見をお聞かせください。
ObjectBox では、直感的でコーディングが楽しい API を提供することで、アプリ開発者に喜びと喜びをもたらすことに専念しています。ぜひ皆様からのご意見をお待ちしております: ObjectBox のどこが気に入っていますか?改善できる点は何でしょうか?日々のアプリ開発において、どのような課題に直面していますか?
皆様のご意見・ご要望をお待ちしておりますので、お気軽にご連絡ください。
ありがとう!ブログで最新情報を入手してください。
新しいリリースの注目に値する重要な変更については、変更ログをお読みください。
ObjectBox は複数のプラットフォームと言語をサポートします。 Java や Kotlin などの JVM ベースの言語に加えて、ObjectBox は以下も提供します。
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.
このライセンスは、このリポジトリ内のコードにのみ適用されることに注意してください。 ObjectBox コンポーネントのすべてのライセンスの詳細については、当社の Web サイトを参照してください。