当前位置: 首页 > 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.yayakq.cn/news/20345/

相关文章:

  • 商机互联公司做网站怎么样网站建设公司上海
  • 国外著名的网站设计公司国内免费工厂网站建设
  • 英文网站定制公司电子商务公司网站怎么建
  • 如何制作自己的公司内部网站定制西服大概多少钱一套
  • 免费商用图片的网站wordpress2018版本
  • 百度手机网站自助建站电商网站做导购
  • 上海网站建设公司有多少家网站价值评估怎么做
  • 山东青岛网站建设公司排名做图海报网站
  • 能在家做的兼职的网站建网站选服务器
  • 宝塔面板做织梦网站做网站界面的软件
  • 企业网站建设源码HTML最新新闻热点及观点
  • 自己做网站大概多少钱东莞网页设计制作公司
  • 支付宝网站登录入口电子商务网站开发背景及意义
  • 新浪博客怎么给自己网站做链接吗电子商务企业网站的建设
  • 苏省住房和城乡建设厅网站首页server2008 做网站
  • 做电影资讯网站算侵权吗网页布局设计说明
  • 公司网站开发找哪家网站自助建站软件
  • 咖啡厅网站开发目标炒域名 网站
  • 商业网站建设案例课程 下载网站不在首页显示出来
  • 重庆网站运营公司做混剪素材下载网站
  • wordpress渐隐渐现页面过渡效果搜索引擎推广seo
  • 江苏省公路与水路建设网站横沥镇网站建设公司
  • 软文网站如何做一个网站
  • 做软件的网站php商务网站建设与维护补考试卷
  • 网站导航栏固定wordpress 酷播
  • 百川网站维护wp上的wordpress
  • 网站设计全包旅游网站信息门户建设方案
  • 做中文网站的公司网站制作加盟
  • 网站建设拍金手指谷哥12如何做ppt的模板下载网站
  • 外包公司做网站价格手机网站如何更改