Sobes.tech
Junior — Middle

Kāda ir @Dao anotācijas loma Android paredzētajā Room bibliotēkā?

sobes.tech AI

Atbilde no AI

Android Room bibliotēkas @Dao anotācija norāda uz saskarni vai abstraktu klasi, kas satur metodes datu bāzes piekļuvei.

@Dao loma:

  • Definē datu bāzes operāciju kopumu (ievietošana, atjaunināšana, dzēšana, vaicājumi).
  • Room automātiski ģenerē šo metožu īstenojumu kompilācijas laikā.
  • Atļauj atdalīt datu piekļuves loģiku no pārējā lietojumprogrammas koda.

Piemērs:

@Dao
interface UserDao {
    @Query("SELECT * FROM users WHERE id = :userId")
    fun getUserById(userId: Int): User

    @Insert
    fun insertUser(user: User)
}

Tādējādi @Dao kalpo kā datu piekļuves līgumu definīcija, un Room ģenerē nepieciešamo kodu darbam ar SQLite.