1.Gradle配置
buildscript {
?ext.objectboxVersion ='2.2.0'
????????dependencies {?
?????????????classpath"io.objectbox:objectbox-gradle-plugin:$objectboxVersion"
????????}
}
2.
dependencies {?
?debugImplementation"io.objectbox:objectbox-android-objectbrowser:$objectboxVersion"
releaseImplementation"io.objectbox:objectbox-android:$objectboxVersion"
}
apply plugin:'io.objectbox'
// 注意下面的內(nèi)容放到 dependencies 語句塊的后面apply plugin:'io.objectbox'
3.//數(shù)據(jù)庫統(tǒng)一操作管理類初始化
DataManager.getInstance().init(this)
4.實體類
import io.objectbox.annotation.Entity
import io.objectbox.annotation.Id
@Entity
class UserInfo {
/**
* actionType : 2
* birthday : 2008-06-13 00:00:00
* email : lupeibo@qq.com
* id : 1
* loginId : 12
* nickname : 陸曉亮
* phone : 18680503648
* platform : 2
* recommendCode : 217823
* sex : 1
* storeId : 2111
* token : 318c84c1594e49c49a586ba5ab8edd18
* userHeadPic : /pic/udu1232.png
* userLevel : 1
* username : 陸培波
*/
? ? var actionType: Int =1
? ? var birthday: String? =null
? ? var email: String? =null
? ? @Id(assignable = true)
????var id: Long =1
? ? var loginId: String? =null
? ? var nickname: String? =null
? ? var phone: String? =null
? ? var platform: Int =2
? ? var recommendCode: String? =null
? ? var sex: Int =0
? ? var storeId: Int =0
? ? var token: String? =null
? ? var userHeadPic: String? =null
? ? var userLevel: Int =0
? ? var username: String? =null
? ? constructor(actionType: Int, birthday: String?, email: String?, id: Long, loginId: String?, nickname: String?, phone: String?, platform: Int, recommendCode: String?, sex: Int, storeId: Int, token: String?, userHeadPic: String?, userLevel: Int, username: String?) {
this.actionType = actionType
this.birthday = birthday
this.email = email
this.id = id
this.loginId = loginId
this.nickname = nickname
this.phone = phone
this.platform = platform
this.recommendCode = recommendCode
this.sex = sex
this.storeId = storeId
this.token = token
this.userHeadPic = userHeadPic
this.userLevel = userLevel
this.username = username
}
constructor()
}
5.
/**
* 數(shù)據(jù)庫操作統(tǒng)一管理類
*/
public? class DataManager {
private static DataManager dataManager;
public static synchronized DataManager getInstance() {
if (dataManager ==null) {
dataManager =new DataManager();
}
return dataManager;
}
public BoxStore boxStore;
public Box userInfoBox;
public void init(BaseApplication baseApplication) {
boxStore = MyObjectBox.builder().androidContext(baseApplication).build();
initUserInfoBox();
}
private void initUserInfoBox() {
//對應操作對應表的類
? ? ? ? userInfoBox = boxStore.boxFor(UserInfo.class);
}
public void insertUserInfo(UserInfo userInfo) {
userInfoBox.removeAll();
userInfoBox.put(userInfo);
}
public void clearUserInfo() {
userInfoBox.removeAll();
}
public UserInfo queryUserInfo(){
return userInfoBox.query().build().findUnique();
}
}
相關(guān)文章:http://www.reibang.com/p/e4ebaa433ae7