[kotlin] 코틀린을 사용하여 Android Jetpack의 Room 라이브러리를 활용하여 데이터 필터링하는 방법은?
Room은 Android Jetpack 라이브러리 중 하나로, SQLite 데이터베이스와 함께 작동하며 로컬 데이터를 다루는 데 사용됩니다. 이 라이브러리를 코틀린을 사용하여 데이터 필터링하는 방법에 대해 알아봅시다.
1. 의존성 추가
먼저, build.gradle
파일에 Room 라이브러리 의존성을 추가해야 합니다.
implementation "androidx.room:room-runtime:2.4.1"
kapt "androidx.room:room-compiler:2.4.1"
2. 데이터베이스 엔티티 및 DAO 생성
다음으로, 데이터베이스 엔티티와 해당 엔티티를 조작하기 위한 DAO(Data Access Object)를 정의해야 합니다. 예를 들어, 다음과 같이 사용자를 나타내는 엔티티를 정의할 수 있습니다.
@Entity
data class User(
@PrimaryKey val id: Int,
val name: String
)
그런 다음, 다음과 같이 해당 엔티티를 조작하기 위한 DAO를 정의할 수 있습니다.
@Dao
interface UserDao {
@Query("SELECT * FROM user WHERE name = :userName")
fun getUserByName(userName: String): User
}
3. 데이터 필터링
이제 해당 DAO를 사용하여 데이터를 필터링할 수 있습니다. 예를 들어, 다음과 같이 Room 데이터베이스를 초기화하고 데이터베이스에서 사용자를 필터링할 수 있습니다.
val db = Room.databaseBuilder(
applicationContext,
AppDatabase::class.java, "database-name"
).build()
val user = db.userDao().getUserByName("John Doe")
위 코드에서 “John Doe”라는 이름을 가진 사용자를 필터링하여 가져오게 됩니다.
이렇게하면, Room 라이브러리를 사용하여 데이터를 필터링할 수 있습니다.
더 많은 정보는 Room 공식 문서를 참조하십시오.