Junior — Middle
Akými metódami a nástrojmi komunikuješ s databázou?
sobes.tech AI
Odpoveď od AI
Pre interakcije s bazom podatkov v Androidu najpogosteje uporabljamo naslednje metode in orodja:
- SQLite — vgrajena relacijska baza podatkov. Za delo z njo lahko uporabimo razred
SQLiteOpenHelper. - Room — knjižnica od Google, ki poenostavi delo s SQLite, zagotavlja prirojen ORM sloj in podporo za anotacije.
- ContentProvider — za izmenjavo podatkov med aplikacijami.
- Realm ali ObjectBox — alternativne NoSQL baze podatkov za mobilne aplikacije.
Primer uporabe Room:
@Entity
data class User(
@PrimaryKey val id: Int,
val name: String
)
@Dao
interface UserDao {
@Query("SELECT * FROM user")
fun getAll(): List<User>
@Insert
fun insert(user: User)
}
@Database(entities = [User::class], version = 1)
abstract class AppDatabase : RoomDatabase() {
abstract fun userDao(): UserDao
}
// Inicializacija
val db = Room.databaseBuilder(
context,
AppDatabase::class.java, "database-name"
).build()
// Uporaba
val users = db.userDao().getAll()