2023-02-24

2023-04-05  本文已影响0人  Zz橙淞

android 使用Room数据库:
1、添加依赖:android7.0以上方式
dependencies {
def room_version = "2.3.0"

implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"

// optional - RxJava2 support for Room
implementation "androidx.room:room-rxjava2:$room_version"

// optional - Guava support for Room, including Optional and ListenableFuture
implementation "androidx.room:room-guava:$room_version"

// optional - Test helpers
testImplementation "androidx.room:room-testing:$room_version"

}
其中 def room_version = "2.3.0" 用于指定Room库的版本号,您可以根据自己的需求更改版本号。此外,根据您的项目,您可能不需要添加所有可选依赖项。

添加上述依赖项后,您就可以开始使用Room库了。

2、创建一个实体类(Entity)来表示你要在数据库中存储的数据。可以使用注解来指定表名、列名等信息,例如:
package com.example.kotlindemo.data

import androidx.room.Entity
import androidx.room.PrimaryKey

/**

3、创建一个数据访问对象(DAO)接口,它包含用于访问数据库的操作,例如插入、查询等。可以使用注解来指定操作的SQL语句,例如:
/**

4、创建一个数据库类,它包含用于获取DAO对象和管理数据库的方法。可以使用注解来指定数据库的版本号、表信息等,例如:
package com.example.kotlindemo.data

import androidx.room.Database
import androidx.room.RoomDatabase
import com.example.kotlindemo.interface.UserDao

/**

5、room 实现数据增删改查
在应用程序中创建一个单例实例来获取MyAppDatabase对象。例如:
val db = Room.databaseBuilder(
applicationContext,
MyAppDatabase::class.java,"myAppDatabase"
).build()

    val userDao = db.userDao()

现在,你可以使用userDao对象来操作数据库了,例如:
1、insertUser插入数据

val users = userDao.getAllUsers();
userDao.insertUser(User(1,"Alice",25))
userDao.insertUser(User(2,"Jorge",35))

2、updateUser 更新数据
val user = userDao.getUserById(1)
user.age = 26
userDao.updateUser(user)

3、deleteUser 删除数据
val user = userDao.getUserById(1)
userDao.deleteUser(user)

4、查询数据getAllUsers/getUserById
使用@Query注解来定义查询数据的方法。例如:
val userDao = db.userDao()
val users = userDao.getAllUsers()

val user = userDao.getUserById(1)

上一篇 下一篇

猜你喜欢

热点阅读