ObjectBox是一个非关系型数据库框架,相比于传统的SQLite来说ObjectBox使用更加简单,本文从新建工程开始到逐步实现数据库的基本增、删、改、查。本文在最后也附上这个工程的源码以供参考。
新建工程
三方库引入
版本号也可直接写到classpath后面,这么写方便统一(后面还会用到)
buildscript {
ext.objectboxVersion = '2.6.0'
dependencies {
classpath "io.objectbox:objectbox-gradle-plugin:$objectboxVersion"
}
}
apply plugin: 'io.objectbox'
初始化
新建Application
记得在AndroidManifest.xml配置
实体类工具
编译一下可能会出现如下错误:
解决办法是添加如下代码:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
再次编译即可通过。再继续编写App类,如果不先编译一次MyObjectBox无法导入:
public class App extends Application {
private BoxStore boxStore;
private static App mInstance;
@Override
public void onCreate() {
super.onCreate();
initDB();
}
private void initDB(){
mInstance = this;
boxStore= MyObjectBox.builder().androidContext(this).build();
}
public static App getInstance() {
return mInstance;
}
public Box<Student> getCheackData(){
return boxStore.boxFor(Student.class);
}
}
数据库基本操作
四个按钮分别来实现增、删、改、查:
这样就可以调用数据的操作接口:
为了测试方便,参数就固定写了:
数据可视化查看
mysql可以通过navicat工具查看数据库信息:
ObjectBox通过浏览器就可以来查看,实现方法也只需要简单的几步操作:
添加依赖
objectboxVersion就是上面提的版本号:
debugImplementation "io.objectbox:objectbox-android-objectbrowser:$objectboxVersion"
releaseImplementation "io.objectbox:objectbox-android:$objectboxVersion"
下载可能会比较慢,耐心等待
初始化端口
boxStore.startObjectBrowser(8090);
建立连接
手机需要连接电脑,打开系统cmd输入命令:adb forward tcp:8090 tcp:8090
浏览器查看
打开浏览器输入地址:http://localhost:8090/index.html即可查看和管理: