개발26 토이프로젝트 1-6 dagger 써보기 -1- 먼저 dagger를 쓰겠다고, build gradle에 추가해야겠지? app 모듈에 추가하고, 이제는 app에서 database를 빌드 해야하니깐 Room 추가하자. dependencies { implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'com.google.android.material:material:1.5.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.3' testImplementation 'junit:junit:4.13.2' androidTestImplementation .. 2023. 4. 9. 토이프로젝트 1-5 room 써보기 먼저 Room에 대한 간단한 설명은... Room이 뭐야? 간단히 설명 Room이 뭐야? 간단히 설명 Room은 안드로이드에서 SQLite 데이터베이스를 쉽게 사용할 수 있도록 도와주는 라이브러리야. Room은 Android Architecture Components 라이브러리 중 하나로, 안드로이드 앱의 데이터베이스를 관리하고 제 www.lonewhite.com 먼저 Room을 가져오려면 maven을 통해 가져와햐해 Maven이 뭐냐고? maven이란? 개념 maven이란? 개념 Maven은 자바 기반 프로젝트의 빌드, 관리, 배포를 자동화하기 위한 도구야. Maven은 Apache Software Foundation라는 곳에서 개발하였으며, 프로젝트의 라이프사이클 관리와 의존성 관리를 중심으로 제공 .. 2023. 3. 12. room 쓸 때 SQLITE_CONSTRAINT_PRIMARYKEY 에러나면? 난 그냥 id에 -1 넣으면 알아서 해주는 줄 알았는데 그러면 안됨 @Entity(tableName = INV_ITEM_TABLE_NAME) data class InvItem( @PrimaryKey val id: Int, @ColumnInfo(name = "item_name") val itemName: String, @ColumnInfo(name = "item_original_id") val itemOriginalId: String?, @ColumnInfo(name = "price") val price: Int, @ColumnInfo(name = "buy_date") @TypeConverters(DateConverter::class) val buyDate: Date, @ColumnInfo(name = ".. 2023. 3. 12. 룸 쓸때 AppDatabase_Impl does not exist 에러나면? 나같은 경우는... TypeConveter 쓰는 부분이 문제였고, 해결방안은... DataClass 뿐만 아니라 RoomDatabase 클래스에도 선언을 해주니 해결됨 요렇게 @Database(entities = [InvItem::class], version = 1) @TypeConverters(DateConverter::class) abstract class AppDatabase : RoomDatabase() { abstract fun invItemDao(): InvItemDao 2023. 3. 12. 이전 1 2 3 4 5 6 7 다음 반응형