我们先来看下效果图
一、配置
Android Studio 3.1.2的配置
根目录的build.gradle
allprojects {
repositories {
google()
jcenter()
maven { url "https://www.jitpack.io" }//加上这个
}
在module的build.gradle配置如下所示
def dbflow_version = "4.2.4"
dependencies {
annotationProcessor "com.github.Raizlabs.DBFlow:dbflow-processor:${dbflow_version}"
implementation "com.github.Raizlabs.DBFlow:dbflow-core:${dbflow_version}"
implementation "com.github.Raizlabs.DBFlow:dbflow:${dbflow_version}"
}
配置就结束了。
二、代码使用流程
在新建的AppDatabase.java中的配置如下
@Database(name = AppDatabase.DATA_NAME,version = AppDatabase.DATA_VERSION)
public final class AppDatabase {
public static final String DATA_NAME = "StudentDatabase";//数据库名称
public static final int DATA_VERSION = 5;//版本信息,一开始的时候是1,这个5是进过升级过后额值
}
在BaseApplication中的初始化;
public class BaseApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FlowManager.init(this);
}
}
下面就是增删该查的操作
Student.java类
@Table(database = AppDatabase.class)//建立的表是在AppDatabase数据库中,默认的表名为:Student_Table
public class Student extends BaseModel implements Parcelable{
@PrimaryKey(autoincrement = true)
private int _id;
@Column
private String name;
@Column
private int age;
@Column
private int price;
@Column
private String nation;
@ForeignKey(tableClass = Teacher.class,saveForeignKeyModel = true)//这里是设置为one-one的形式,切记不要加stubbedRelationship = true,要不然后期只能查询id,其他值查不出