Android 数据库Room的开发使用详解
一.简介:
Room 在SQLite上提供了一个抽象层,以便在充分利用SQLite的强大功能的同时,能够流畅地访问数据库。
Room包含3个主要组件:
数据库:包含数据库持有者,并作为应用已保留持久性关系型数据的底层连接的主要接入点。
@Database注释
1.是扩展RoomDatabase的抽象类。
2.在注释中添加与数据库关联的实体表。
3.包含具有0个参数且返回使用@Dao 注释的类的抽象方法。
在运行时,您可以通过调用Room.databaseBuilder()或Room.inMemoryDatabaseBuilder()获取Database的实例。
@Entity:表示数据库中的表
@Dao:包含用于访问数据库的方法
二:依赖Room数据库
1.在App模块下bulid.Gradle 添加项目的依赖//添加Room依赖
implementation 'androidx.room:room-runtime:2.2.5'
annotationProcessor 'androidx.room:room-compiler:2.2.5'
三:创建一个实体类Entity@Entity
public class User {
@PrimaryKey(autoGenerate = true)//主键是否自动增长,默认为false
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;