当前位置: 首页 > news >正文

深圳做网站好的公司前端开发

深圳做网站好的公司,前端开发,阜宁网站建设,简单大气的网站ObjectBox其核心特点ObjectBox与 SQLite 和 Realm 的对比Android集成ObjectBox创建ObjectBox实体对象创建ObjectBox操作管理类OBManager在Application初始化ObjectBox插入或更新数据查询数据统计数据分页数据查询删除数据总结今天分享一套Android另一个数据库ObjectBox。Object…

  • ObjectBox其核心特点
  • ObjectBox与 SQLite 和 Realm 的对比
  • Android集成ObjectBox
  • 创建ObjectBox实体对象
  • 创建ObjectBox操作管理类OBManager
  • 在Application初始化ObjectBox
  • 插入或更新数据
  • 查询数据
  • 统计数据
  • 分页数据查询
  • 删除数据
  • 总结

今天分享一套Android另一个数据库ObjectBox。ObjectBox 是一款专为移动端和物联网(IoT)设备设计的高性能 NoSQL 数据库,专注于极致的速度和轻量级资源占用。它由 GreenRobot 团队开发(同团队开发了 GreenDAO 和 EventBus),适用于 Android、iOS、Linux、Windows 等平台,尤其适合需要高效本地数据存储的场景。
在这里插入图片描述

ObjectBox其核心特点

  • 非常高的性能
    • 基于原生 C 核心库,读写速度远超 SQLite 和其他 ORM 框架。
    • 支持 零拷贝序列化,减少内存分配,提升数据处理效率。
  • 简单易用
    • 无 SQL 语法:通过链式 API 或 Kotlin/Java 方法直接操作对象,避免 SQL 注入风险。
    • 自动生成代码:通过注解生成数据模型和查询类(如 User_),减少手写代码。
  • 经量级
    • 核心库体积小(约 1MB),适合移动端和嵌入式设备。
    • 低内存和 CPU 占用,延长设备续航时间。
  • 实时数据同步(ObjectBox sync)
    • 提供端到端数据同步功能,支持离线优先的分布式应用(需商业授权),在一般项目应用中这项是用不到的,使用社区版即可。

ObjectBox与 SQLite 和 Realm 的对比

特性ObjectBoxSQLiteRealm
性能⚡️ 最快中等
API 易用性✅ 链式调用,无 SQL❌ 需写 SQL✅ 对象化操作
跨平台支持Android, iOS, 桌面通用Android, iOS
同步功能✅ (商业版)✅ (商业版)
开源协议Apache 2.0公有领域Apache 2.0

Android集成ObjectBox

本人觉得直接接官网API仍有点麻烦,因此单独封装了SDK以便后面统一使用;

  • 官方文档:https://docs.objectbox.io/
  • GitHub 仓库:https://github.com/objectbox/objectbox-java

首先需要在libs.versions.toml添加包引用地址(gradle新版本才会有,老项目直接在dependencies配置即可)

objectboxGradlePlugin = "4.1.0"objectbox-gradle-plugin = { module = "io.objectbox:objectbox-gradle-plugin", version.ref = "objectboxGradlePlugin" }

在项目根目录的build.gradle配置插件的classpath

buildscript {repositories {mavenCentral()}dependencies {classpath(libs.objectbox.gradle.plugin)}
}

然后在项目模块的build.gradle配置以下属性(配置完后记得需要同步),当然在这之前需要配置objectbox sdk引用,这一步完成之后包的objectbox就算集成好了;

storageObjectbox = "1.0.0"eyinfo-storage-objectbox = { module = "io.github.eyinfo:storage-objectbox", version.ref = "storageObjectbox" }
plugins {alias(libs.plugins.android.application)
}//导入插件
apply plugin: 'io.objectbox'android {//常规配置项
}dependencies {//引用objectbox sdkapi libs.eyinfo.storage.objectbox
}

创建ObjectBox实体对象

  • 对象必须要设置@Entity注解
  • @Id注解:如果assignable=true表示主键值需要手动传入;如果assignable=false表示主键值为内部自增行为,无需外部传入;
@Entity
public class UserOB {@Id(assignable = true)private Long id;private int age;private String name;//生成getter、setter属性
}

这一步配置完后同步工程才能生成MyObjectBox对象,如果未自动生成MyObjectBox可能会导致后续无法使用ObjectBox数据库;

在这里插入图片描述

创建ObjectBox操作管理类OBManager

这里继承ObjectBoxAbstractManager实现与配置对应超类方法即可,方便使用整个模块中配置一次即可;

public class OBManager extends ObjectBoxAbstractManager {private static volatile OBManager instance;public static OBManager getInstance() {if (instance == null) {synchronized (OBManager.class) {if (instance == null) {instance = new OBManager();}}}return instance
http://www.hkea.cn/news/98678/

相关文章:

  • 档案网站建设的步骤八大营销方式有哪几种
  • 手机网站免费制作平台semseo
  • 周口市做网站小红书seo排名
  • 网站开始怎么做的ps培训
  • 去哪个网站找题目给孩子做保定百度首页优化
  • 五道口网站建设惠州seo外包服务
  • 如何查看网站是否备案企业宣传册
  • 好的网站建设公司排名互联网宣传推广
  • 上海买二手房做哪个网站好seo快速排名优化
  • 十大中国网站制作免费广告
  • wordpress 文章主题关键词推广seo
  • 佛山网站建设佛山网络推广代运营公司靠谱吗
  • 贵阳疫情最新消息站内seo优化
  • wordpress相关问题深圳百度关键字优化
  • 做国珍新时代 网站陕西seo顾问服务
  • 建立网站怎么做关键字搜索引擎营销的作用
  • 广州手机网站建设宁波seo优化费用
  • 怎么设置网站服务器宁德市教育局官网
  • 查看网站源代码建站可以牛排seo系统
  • 政府网站建设的基本原则百度网盘电脑版
  • 张家港网站建设福州百度快速优化
  • 兼职做网站编辑百度搜索推广开户
  • 谁告诉你j2ee是做网站的宁波网站推广找哪家公司
  • 谷歌外贸建站多少钱搭建网站教程
  • 赚钱靠普的网站关键字搜索软件
  • 建设银行深分行圳招聘网站做游戏推广一个月能拿多少钱
  • 北京网站建设及推广招聘关键词排名代做
  • 对网站建设的意见建议网络营销推广的方法有哪些
  • 爬虫网站怎么做怎样才能在百度上面做广告宣传
  • 网站页码南昌做seo的公司有哪些