当前位置:网站首页>Use of room database
Use of room database
2022-07-05 05:19:00 【Novice Xiaowang】
1. Guide pack
implementation "androidx.room:room-runtime:2.4.2" annotationProcessor "androidx.room:room-compiler:2.4.2"
2.gradle Middle configuration
javaCompileOptions { annotationProcessorOptions { arguments = ["room.schemaLocation": "$projectDir/schemas".toString()] } }
3. Create data object entity
@Entity
public class User {
@PrimaryKey(autoGenerate = true)
long userId;
@ColumnInfo(name = "username")
String userName;
@ColumnInfo(name = "password")
String password;
public User(@NonNull String userName,@NonNull String password){
this.userName = userName;
this.password = password;
}
}
4. Create the corresponding Dao
@Dao
public interface UserDao {
@Insert
void addUser(User ... user);
@Delete
int deleteUser(User user);
@Update
int updateUser(User user);
@Query("SELECT * FROM user WHERE userID = :id")
User queryUser(long id);
}
5. Create database
//exportSchema = true Support export Room Generated profile
@Database(entities = {User.class},version = 3,exportSchema = true)
public abstract class MyRoomDatabase extends RoomDatabase {
public static String roomName = "user";
public static MyRoomDatabase instance;
public abstract UserDao getUserDao();
public static MyRoomDatabase getInstance(Context context){
if (instance == null){
synchronized (MyRoomDatabase.class){
if (instance == null){
instance = Room.databaseBuilder(context,MyRoomDatabase.class,roomName).allowMainThreadQueries().build();
}
}
}
return instance;
}
}
6. call
MyRoomDatabase.getInstance(this).getUserDao().addUser(new User("wang","lllll"));
边栏推荐
- Es module and commonjs learning notes -- ESM and CJS used in nodejs
- Web APIs DOM节点
- Binary search basis
- National teacher qualification examination in the first half of 2022
- A complete attack chain
- 十年不用一次的JVM调用
- Haut OJ 1218: maximum continuous sub segment sum
- room数据库的使用
- Embedded database development programming (VI) -- C API
- 2022上半年全国教师资格证下
猜你喜欢
随机推荐
Django reports an error when connecting to the database. What is the reason
[turn to] MySQL operation practice (I): Keywords & functions
[sum of two numbers] 169 sum of two numbers II - enter an ordered array
Lua GBK and UTF8 turn to each other
How can the Solon framework easily obtain the response time of each request?
[allocation problem] 135 Distribute candy
Embedded database development programming (zero)
支持多模多态 GBase 8c数据库持续创新重磅升级
Solon Auth 认证框架使用演示(更简单的认证框架)
【ES实战】ES上的native realm安全方式使用
[to be continued] [UE4 notes] L3 import resources and project migration
Double pointer Foundation
利用HashMap实现简单缓存
Binary search basis
Haut OJ 1243: simple mathematical problems
C language Essay 1
[转]:Apache Felix Framework配置属性
Haut OJ 1357: lunch question (I) -- high precision multiplication
[转]: OSGI规范 深入浅出
[interval problem] 435 Non overlapping interval