[AndroidStudio] RoomDB & SharedPreferences

han91·2024년 5월 17일

[AndroidStudio]

목록 보기
10/15

📌 RoomDB

데이터베이스를 서버 대신 파일 형태로 저장하는 SQLite 기반 관계형 데이터베이스 구조

  • SQL문 사용 (자주 사용되는 Insert, Delete는 SQL문 작성 없이 가능)
  • Database (데이터베이스)

    저장하는 데이터의 집합 단위

  • Entity (항목)

    데이터베이스 내의 테이블

  • DAO (다오)

    데이터베이스에 접근하는 함수(insert,update,delete,...)를 제공

📌 SharedPreferences

안드로이드에서 간단하게 값을 저장하고 불러오는 방법
기본적인 자료구조만 가능하기 때문에 하나의 Key에 다중 값을 저장하기는 어려움

  • Key-Value 형태로 값을 저장
  • Key는 String Type을 사용
  • Value는 기본적인 자료 구조만 가능 (Boolean, Long, String, Int, Double, Set (순서 없이 여러 개 담는))

💻 사용법

class MySharedPreferences(context: Context) {
    private val prefsFileName = "prefs"
    private val prefs : SharedPreferences = context.getSharedPreferences(prefsFileName, Context.MODE_PRIVATE)
    private val editor : SharedPreferences.Editor = prefs.edit()
    //데이터 조회
    fun getString(key: String, str: String) : String {
        return prefs.getString(key, str).toString()
    }
    //데이터 저장
    fun setString(key: String, str: String) {
        editor.putString(key, str)
        editor.apply()
    }
    //데이터 삭제
    fun delete(key: String) {
        editor.remove(key)
        editor.apply()
    }
}

호출 방식

App.prefs.setString("key값", "내용")
profile
천방지축어리둥절빙글빙글돌아가는개발자

0개의 댓글