패스트캠퍼스 챌린지

[패스트캠퍼스 챌린지 24일차] Android book review 마무리

Book, History Review 모델을 만들고

bookDao, historyDao, reviewDao , appDatabase를 이용하여 데이터베이스를 처리해주었습니다.

@Parcelize
data class Book(
    @SerializedName("itemId") val id: Long,
    @SerializedName("title") val title: String,
    @SerializedName("description") val description: String,
    @SerializedName("coverSmallUrl") val coverSmallUrl: String
):Parcelable
@Entity
data class History (
    @PrimaryKey val uid: Int?,
    @ColumnInfo(name = "keyword") val keyword: String?

)
@Entity
data class Review(
    @PrimaryKey val id: Int?,
    @ColumnInfo(name ="review") val review: String?

)
@Database(entities = [History::class, Review::class], version = 2)
abstract class AppDatabase:RoomDatabase() {
    abstract fun historyDao(): HistoryDao
    abstract fun reviewDao(): ReviewDao

}
fun getAppDatabase(context: Context): AppDatabase{

    val migration_1_2 = object : Migration(1,2){
        override fun migrate(database: SupportSQLiteDatabase) {
            database.execSQL("CREATE TABLE `REVIEW` (`id` INTEGER, `review` TEXT,"+" PRIMARY KEY(`id`))")
        }

    }
    return Room.databaseBuilder(
        context,
        AppDatabase::class.java,
        "BookSearchDB"
    )
        .addMigrations(migration_1_2)
        .build()
}

패스트캠퍼스 바로가기 -> https://bit.ly/3FVdhDa

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.