Room은 Android의 데이터베이스 라이브러리로서 SQLite를 보다 쉽게 사용할 수 있게 해준다. 데이터베이스의 접근을 추상화하고 SQLite 데이터베이스와의 상호작용을 더 간단하고 안전하게 할 수 있다. SQL 쿼리의 컴파일 타임 검사를 제공하여 런타임 에러를 줄이고, 보일러플레이트 코드를 제거하여 코드의 가독성과 유지보수성을 향상시킨다. Room의 3가지 주요 요소는 다음과 같다.
1. Entity: 데이터베이스 테이블을 나타내는 데이터 클래스이다. 각 Entity는 데이터베이스 테이블의 행을 표현하며, 클래스의 각 필드는 테이블의 열에 매핑된다. @Entity 어노테이션을 사용하여 정의된다.
2. DAO(Data Access Object): 데이터베이스에 접근하기 위한 메서드를 정의한 인터페이스이다. DAO는 데이터베이스 작업(삽입, 삭제, 업데이트, 쿼리)을 위한 메서드를 제공하며, 각 메서드는 SQL 쿼리를 통해 데이터베이스와 상호작용한다. @Dao 어노테이션을 사용하여 정의된다.
3. Database: 데이터베이스와 연결된 추상 클래스이다. RoomDatabase를 상속하며 데이터베이스 인스턴스를 생성하고 DAO를 연결한다. @Database 어노테이션을 사용하여 정의된다.
728x90
'앱 개발 > Kotlin_Android' 카테고리의 다른 글
DAO annotation (0) | 2024.05.21 |
---|---|
Room 사용 이유 (0) | 2024.05.21 |
서버 & 클라이언트 (0) | 2024.05.17 |
레트로핏 (0) | 2024.05.16 |
RESTful API (0) | 2024.05.16 |