Android学习-数据存储

对应《第一行代码》第六章

1.数据持久化

概念:将内存中的瞬时数据保存在存储设备中。保存在内存中的数据是处于瞬时状态,保存在存储设备中的数据是处于持久状态。

2.文件存储(不适用保存一些较为复杂的文本数据)

2.1将数据存储到指定的文件中

Context类中openFileOutput()方法:将数据存储到指定的文件中

 

 

 2.2从文件中读取数据

Context类中openFileInput()方法:从文件中读取数据。只接收一个参数,即读取文件名,

 

 

 3.SharedPreferences存储

方式:使用键值对方式存储数据

优点:比文件存储方法方便

3.1将数据存储到SharedPreferences中

1.Context类中getSharedPreferences()方法

2.Activity类中getPreferences()方法

3.PerferenceManager类中的getDefaultSharedPreferences()方法

 3.2 从SharedPreferences中读取数据

 3.3 实现记住密码功能

 4 SQLite数据库存储

4.1 创建数据库

SQLiteOpenHelper是抽象类,有两个抽象方法:onCreate()和onUpgrade()

getReadableDatabase():可创建或打开一个现有数据库,当数据库不可写入时,该方法返回的对象将以只读的方式打开数据库。

getWritableDatabase():可创建或打开一个现有数据库,当数据库不可写入时,该方法将出现异常。

 SQLite中:integer表示整型,real表示浮点型,text表示文本类型,blob表示二进制类型

 

 

 查看表的方法:

使用Android SDK中的adb,需要配置环境变量(具体步骤在第一行代码6.4.1部分)

 4.2升级数据库

 

 4.3添加数据

insert()用于添加数据,

 4.4更新数据

updatae()

 4.5删除数据

delete()

 4.6查询数据

5 使用LitePal操作数据库

5.3创建和升级

5.4添加数据

创建出模型类的实例,再将所有要存储的数据设置好,最后调用save()方法

5.5更新数据

model.isSaved():判断对象是否已存储,true表示已存储,false表示未存储

 setToDefault():将数据更新为默认值

 5.6 删除数据

 5.7查询数据

eg:查询book表中所有数据

List<Book> books = DataSupport.findAll(Book.class);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值