본문 바로가기

android room3

[Android] Room Migration : 데이터베이스 테이블 수정하기 개발을 하다보니 Room의 엔티티를 바꾸거나 컬럼 속성을 바꿔야 하는 경우가 발생했다. Sqllite을 기반으로 했기 때문에 쿼리문도 Sqllite로 작성하면 된다. 여기에서 발생한 이슈 사항을 정리하는 포스팅이다! Room Migration 데이터베이스에 테이블이 추가, 삭제되는 등 변경이 발생했을 때 버전만 올린다면 기존의 데이터에 영향을 끼칠 수 있다. Migration을 하기 위해서는 다음과 같은 순서를 따르면 된다. 데이터베이스의 버전 수정하기 (테이블을 추가하거나 삭제한다면 entities도 수정하기) Migration 정보를 담을 Migration 객체 생성하기 데이터베이스에 Migration 객체 추가하기 1. 데이터베이스 버전 수정하기 @Database(entities = [...], v.. 2022. 3. 26.
[Android/Jetpack] Room + LiveData + ViewModel : 코루틴을 이용한 예제(2) 5. View 생성 (1) Main Activity 생성 activity_main.xml 연락처가 보여지는 화면을 그린 레이아웃 파일 contact_recyclerview : 연락처 recyclerview id add_button : 새로운 연락처 추가 버튼 id reference > [Codelabs] 뷰를 사용한 Android Room - Kotlin [Android][Kotlin] MVVM & AAC 연습 예제 2021. 9. 25.
[Android/Jetpack] Room + LiveData + ViewModel : 코루틴을 이용한 예제(1) 이번에는 지난 포스팅들에서 다뤘던 MVVM 패턴과 AAC의 ROOM, LiveData를 적용할 예제 실습을 해볼 것이다. 어떤 구조로 만들어야 하는지 알아보기 위해 참조의 블로그의 예제와 codelab을 참고한 실습이다. [ 앞으로 할 작업의 개요 ] LiveData : 관찰할 수 있는 데이터 홀더 클래스 - 수명 주기를 인식하는 컴포넌트로 항상 최신 버전의 데이터를 보유/캐시하고 데이터가 변경된 경우 Observer에게 알림 ViewModel : 저장소(데이터)와 UI 간의 통신 센터 역할 - ViewModel 인스턴스는 Activity/Fragment 재생성이도 유지 Room : 데이터베이스 작업을 간소화하고 기본 SQLite 데이터베이스의 엑세스 포인트 역할 Entity : Room 작업 시 데이터.. 2021. 9. 24.
728x90