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

网站建设的公司收费/google chrome 网络浏览器

网站建设的公司收费,google chrome 网络浏览器,沈阳网站建设哪家公司好,无锡微信网站建设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.whsansanxincailiao.cn/news/30249498.html

相关文章:

  • 东莞网站设计制作/优化教程
  • 全国有哪些做服装的网站/百度搜索引擎优化案例
  • 潮州住房与建设局网站/营销软文网站
  • wordpress 修改文章id/seo优化多少钱
  • css企业网站模板/郑州网站制作公司哪家好
  • 免费b网站推广/购物网站有哪些
  • 男女做啊免费视频网站/站内关键词自然排名优化
  • 西宁建设网站价格低/上海app网络推广公司
  • 哈尔滨门户网站设计报价/seo建站网络公司
  • 怎样用jsp做网站/企业网站设计论文
  • 做代理网站/商务软文写作范文200字
  • 做网站加入广告联盟/seo职业发展
  • 做网站好赚钱/广州seo优化费用
  • 衣服销售网站建设规划书范文/360收录
  • 廊坊seo外包公司/黑帽seo工具
  • 寿光网站建设定制/百度电脑网页版
  • 公司网站开发有哪些/巧克力软文范例200字
  • 专业网站开发哪里好/游戏代理加盟平台
  • 东莞网站建设 少儿托管/网络营销的重要性
  • mui做网站的好处/百度关键词seo排名优化
  • 中建卓越建设管理有限公司网站/上海网站推广服务公司
  • 省政府网站建设/搜什么关键词比较刺激
  • 可以先做网站后备案么/排名优化公司电话
  • 怎样做网站卖东西/百度公司招聘2022年最新招聘
  • 网站导航条模板/品牌推广软文200字
  • 墨刀做网站/百度竞价关键词优化
  • 初中生怎么提升学历/宁宁网seo
  • 网站建设分工说明/企业网络营销方法
  • 重庆seo网络推广优化/聊城seo培训
  • 用户体验差有哪些网站/百度平台营销软件