상세 컨텐츠

본문 제목

Database(SharedPreference)

Android(강의정리)

by 낙지지 2020. 11. 20. 11:31

본문

데이터 베이스
- 데이터를 저장하기 위함


데이터 저장 방식
- RDB (Relational Database)
- 관계형 데이터 베이스
- 엑셀 처럼 생겼다
이름 학번 학교 성벌
홍길동 1 서울 남
김개똥 2 전북 여
김개똥 2 전북 여
김개똥 2 전북 여
김개똥 2 전북 여

- Key-Value
- 쌍으로 저장하는 방식 (,벨류)

- RDBMS
- Relataional Database Management system
- RDB를 관리 하기 위한 툴
- MySQL
- Oracle
- PostgreSQL
- SQL
- RDBMS를 위한 언어이다

- NoSQL
- SQL말고 다르게 해보자!

안드로이드 데이터베이스
- SQLiteDatabase
- SharedPreference
- Key-value 방식
- 목적 : 공유된 사용자의 기호 방식
- 하드하게 데이터베이스 시스템이 구축할 수 없다!


- SharedPreference(key, value방식)

 

// Mode
// - MODE_PRIVATE : 생성한 application에서만 사용 가능. -> 보통 이걸로 씀?
// - MODE_WORLD_READABLE : 다른 application에서 사용 가능 -> 읽을 수만 있다.
// - MODE_WORLD_WRITABLE :다른 application에서 사용 가능 -> 기록도 가능.
// - MODE_MULTI_PROCESS : 이미 호출되어 사용중인지 체크
// - MODE_APPEND : 기존 preference에 신규로 추가

 

 

  • 데이터를 저장하는 법
save_btn.setOnClickListener {
            val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
            val editor: SharedPreferences.Editor = sharedPreference.edit()
            editor.putString("hello", "안녕하세요")
            editor.putString("goodbye", "안녕가세요")
            editor.commit()
        }

 

  • 데이터를 불러오는 방법
load_btn.setOnClickListener {
            // SharedPreference에서 값을 불러오는 방법
            val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
            val value1 = sharedPreference.getString("hello", "데이터 없음1")
            val value2 = sharedPreference.getString("goodbye", "데이터 없음2")
            Log.d("key-value", "Value1 : " + value1)
            Log.d("key-value", "Value2 : " + value2)
        }

 

  • 삭제하는 방법(특정)
delete_btn.setOnClickListener {
            val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
            val editor = sharedPreference.edit()
            editor.remove("hello")
            editor.commit()
        }

 

  • 삭제하는 방법(전체)
delete_all_btn.setOnClickListener {
            val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
            val editor = sharedPreference.edit()
            editor.clear()
            editor.commit()
        }

'Android(강의정리)' 카테고리의 다른 글

Network  (0) 2020.11.23
Async(비동기)  (0) 2020.11.23
Tablayout, pager(2)  (0) 2020.11.19
TabLayout, Pager  (0) 2020.11.19
RecyclerView(전화번호부 만들기)  (0) 2020.11.19

관련글 더보기

댓글 영역