码迷,mamicode.com
首页 > 其他好文 > 详细

objectbox基础

时间:2018-01-30 19:47:00      阅读:355      评论:0      收藏:0      [点我收藏+]

标签:file   基础   proc   标示   demo   creat   rem   uri   net   

objectbox基础

参考链接

1. objectbox特性

  • 超快 objectbox优于测试过的所有嵌入式数据库
  • 面向对象的api 没有ORM,没有SQLite,简洁的api
  • 自动升级 可以直接在对象上进行删除修改等操作
    其它参考官网介绍

2.如何使用?

1.在项目build.gradle添加对应引用

buildscript {
    ext.objectboxVersion = ‘1.4.0‘
    repositories {
        jcenter()
        maven { url "http://objectbox.net/beta-repo/" }
    }
    dependencies {
        classpath ‘com.android.tools.build:gradle:2.3.3‘
        classpath "io.objectbox:objectbox-gradle-plugin:$objectboxVersion"
    }
}
allprojects {
    repositories {
        jcenter()
        maven { url "http://objectbox.net/beta-repo/" }
    }
}

2.在app的 build.gradle文件添加引用

apply plugin: ‘com.android.application‘
apply plugin: ‘io.objectbox‘
dependencies {
    compile "io.objectbox:objectbox-android:$objectboxVersion"
    annotationProcessor "io.objectbox:objectbox-processor:$objectboxVersion"
}

3.定义要保存在数据库中的对象

@Entity
public class Note {
    @Id
    long id;
    String text;
}

添加完成对象后,编译项目,会自动生成MyObjectBox对象

4.在Application中初始化MyObjectBox对象

private BoxStore boxStore;
  @Override
  public void onCreate() {
    super.onCreate();
    boxStore = MyObjectBox.builder().androidContext(App.this).build();
    Log.d("App", "Using ObjectBox " + BoxStore.getVersion() + " (" +                BoxStore.getVersionNative() + ")");
  }
  public BoxStore getBoxStore() {
    return boxStore;
  }

5.进行数据库的各种操作

private Box<Note> notesBox;
notesBox = ((App) getApplication()).getBoxStore().boxFor(Note.class);

Box提供了对数据进行增删改查的api
put:插入数据
get:查询数据
remove:删除数据
count:返回存贮得对象个数
query: 根据对应得条件查询
修改数据,先根据query查询到对应的对象,修改对应的属性值后,调用put方法插入到数据库

3.objectbox注解

注解 介绍
@Entity 表示一个对象
@Id 表示一个标示符,默认自动维护
@Index 表示一个临时属性,不会存储在数据库
@NameInDb 表示存储在数据库中的列名称

objectbox基础

标签:file   基础   proc   标示   demo   creat   rem   uri   net   

原文地址:https://www.cnblogs.com/bruce2020/p/8337310.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!