数据存储 – 持久化
文件存储
-
所有数据原封不动保存在文件中
-
Context 类的openFileOutput()和openFileInput()方法 (返回的是相对应的FileOutputStream 和FileInputStream对象)
-
默认存储路径:data/data//files/
-
两种操作模式:MODE_PAIVATE(默认模式,会覆盖内容); MODE_APPEND(追加内容)
SharedPreferences存储
-
使用键值对方式存储
-
存储路径:data/data//shared_prefs/
-
只有当前应用程序才能对SharedPreferences进行读写
SQLite数据库存储
-
帮助类:SQLiteOpenHelper进行新建和升级
-
其中onCreate() 如果已经有该数据库,就不会再次调用onCreate(),除非使用更高的版本号,在onUpgrade()中调用
-
使用ContentValues对象进行添加和更新操作
使用LitePal操作数据库
-
开源库,采用的是对象关系映射模式(ORM)
-
使用开源库一般需要在app/build.gradle中添加依赖
-
新建litepal.xml用于指定db name 和version
-
配置LitePalApplication
-
之后只需要将对象的实体类加入到litepal.xml中,就能实现对数据库的操作。
-
添加数据:实体类需要继承DataSupport
-
查询数据:findAll(Book.class) 直接返回实体类Book的List集合