赞
踩
参考文档:
[1] 使用 Room 实体定义数据
[2] 使用 Android Jetpack 的 Room 部分将数据保存到本地数据库。
[3] 实体类介绍
[4] RoomAPI、依赖
[5] 编写异步Dao查询
//Room
implementation "androidx.room:room-runtime:2.6.1"
annotationProcessor "androidx.room:room-compiler:2.6.1"
//Rxjava
implementation "androidx.room:room-rxjava3:2.6.1"
Room是由三大部分组成的:
@Entity:
tableName
: 指定表名。primaryKeys
: 指定主键字段。indices
: 定义索引。foreignKeys
: 定义外键关系默认情况下,Room 将类名称用作数据库表名称。如果您希望表具有不同的名称,请设置 @Entity
注解的 tableName 属性。
同样,Room 默认使用字段名称作为数据库中的列名称。
@Entity(tableName = "users")
public class User {
@PrimaryKey(autoGenerate = true)
public int id;
@ColumnInfo(name = "first_name")
public String firstName;
@ColumnInfo(name = "last_name")
public String lastName;
}
每个 Room 实体都必须定义一个主键,用于唯一标识相应数据库表中的每一行。
autoGenerate
: 是否自动生成主键值。name
: 指定字段名,也就是表的列名typeAffinity
: 指定字段类型。defaultValue
:设置默认值,未指定值时的默认值通过 typeAffinity
属性,可以指定字段的数据类型,如 TEXT
、INTEGER
等。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/785670
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。