본문 바로가기
Android Studio/Android

Android Studio Room Database

by ksb0511 2020. 4. 2.

안드로이드 스튜디오에서 로컬 DB를 사용할 때 쓸 수 있는 것으로 SQLite와 Room이라는 것이 있다. Room은 2017년에 새로 나온 것이다.

Room은 일종의 라이브러리라고 볼 수 있는데, SQLite의 기능을 쓸 수가 있으며, DB로 접근을 편하게 도와준다.

SQLite를 쓸 경우에는 데이터에 변화가 생기면 수동으로 업데이트를 해주어야 한다. 이 과정에서 생각보다 시간이 많이 소요되며 오류가 생길 수가 있다. 또한 무의미한  boilerplate code를 많이 사용하게 된다. 이러한 단점들을 보완해서 나온게 Room이라고 볼 수 있다.

 

참고로 Room은 안드로이드 아키텍처의 구조 중 하나에 포함되어 있다. MVVM 아키텍처의 구성은 View-ViewModel-Model의 구조이다. 이 구조에 대한 간단할 설명은 아래에서 확인할 수 있다.

https://ksb0511.tistory.com/34

 

Android MVVM Architecture

MVVM 아키텍처란 View(뷰), ViewModel(뷰모델), Model(모델)로 이루어진 구조를 말한다. 뷰에서는 뷰를 참조하고 뷰모델에서는 모델을 참조하는 방식으로 뷰에서 모델로의 직접 참조는 불가능한 구조다. 뷰에서..

ksb0511.tistory.com

 

이 모델을 보면 뷰에서 뷰모델의 LiveData를 통해 변화를 관찰하고 자동으로 감지하여 뷰를 업데이트 시켜주는 기능이 존재한다. 여기서 뷰모델은 모델과 연결이 되어 있는데, 여기서 쓰는 모델은 Room Database이다. 아까 위에서 말했다시피, 룸은 SQLite 데이터베이스를 편하게 사용하는 라이브러리이자 직접 CREATE를 하지않아도 되고, 더 직관적이고 편리하게 데이터를 관리할 수 있다라는 장점이 있다.

 

룸의 구성요소로는 Entity, DAO, Database로 총 3가지가 있다.

 

'Android Studio > Android' 카테고리의 다른 글

Android Studio 팝업창 만들기  (0) 2020.07.22
Android Studio setClipToOutLine() in RecyclerView  (0) 2020.04.10
Android MVVM Architecture  (0) 2020.03.27
Android Studio 그림자 생성  (0) 2020.03.24
Activity의 생명주기  (0) 2020.02.29

댓글