当前位置:网站首页>Android foundation [Super detailed android storage method analysis (SharedPreferences, SQLite database storage)]
Android foundation [Super detailed android storage method analysis (SharedPreferences, SQLite database storage)]
2022-08-04 06:07:00 【leave the keyboard】
目录
1.Android存储方式
1.1Android共有5medium storage:
SharedPreferences
内部存储(Internal Storage)
外部存储(External Storage)
SQLite数据库存储
网络存储(现阶段主流)
今天我们主要讲解SharedPreferences(文件存储)和SQLite数据库存储.
2.SharedPreferences(文件存储)
2.1简介
文件,相当于properties文件,数据存储都是使用键值对来存储.
2.2写入
a.获取SharedPreferences(①:getSharedPrefernces,②:getPrefernces)
①和②The difference between the acquisition method is the former two parameters(Store file name and mode of operation(int mode)),The latter has only one parameter of operation mode.
b.借助Editor,向SharedPreferenxce中写入数据.
c.写入数据,Only raw basic data can be written(boolean,float,int,long,String),Compound data cannot be written.
d.提交数据.
调用 SharedPreferences.Editor 的 commit() method to submit updates to SharedPreferences 中.
String name="zs";
String pwd="123";
SharedPreferences sp= getSharedPreferences("logininfo",MODE_PRIVATE);
SharedPreferences.Editor edit = sp.edit();
edit.putString("name",name);
edit.putString("pwd",pwd);
edit.commit();
2.3读取
a.获取sharedPrefernces.
b.获取数据.
SharedPreferences sp1= getSharedPreferences("logininfo",MODE_PRIVATE);
String sp_name = sp1.getString("name", "");
String sp_pwd = sp1.getString("pwd", "");
3.SQLite数据库存储
3.1简介
特点:轻量,无需配置.
缺点:本地化.
3.2创建
a.用Class,DBHelper 继承SQLiteOpenHelper.
public class DBHelper extends SQLiteOpenHelper {
}
b.实现两个抽象方法 onCreate() onUpgrade() 创建一个带参的构造方法.
public class DBHelper extends SQLiteOpenHelper {
public DBHelper(@Nullable Context context) {
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
c.在构造方法中 创建数据库.
public class DBHelper extends SQLiteOpenHelper {
public DBHelper(@Nullable Context context) {
super(context, "school.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
d.在onCreate() 方法中,创建表和插入数据.
public class DBHelper extends SQLiteOpenHelper {
public DBHelper(@Nullable Context context) {
super(context, "school.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("create table student(sid integer primary key,sname text,sex text)");
sqLiteDatabase.execSQL("insert into student values(1,'zs','男')");
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
边栏推荐
- 记一次flink程序优化
- [Deep Learning 21 Days Learning Challenge] 1. My handwriting was successfully recognized by the model - CNN implements mnist handwritten digit recognition model study notes
- Dictionary feature extraction, text feature extraction.
- Androd Day02
- 【深度学习21天学习挑战赛】0、搭建学习环境
- flink-sql自定义函数
- (十四)平衡二叉树
- 剑指 Offer 2022/7/9
- sklearn中的学习曲线learning_curve函数
- TensorFlow2学习笔记:5、常用激活函数
猜你喜欢
NFT市场开源系统
(十三)二叉排序树
网络大作业心得笔记
TensorFlow2 study notes: 8. tf.keras implements linear regression, Income dataset: years of education and income dataset
纳米级完全删除MYSQL5.7以及一些吐槽
字典特征提取,文本特征提取。
Simple and clear, the three paradigms of database design
flink on yarn指定第三方jar包
[Go language entry notes] 13. Structure (struct)
(十五)B-Tree树(B-树)与B+树
随机推荐
判断字符串是否有子字符串重复出现
k3s-轻量级Kubernetes
MySQL最左前缀原则【我看懂了hh】
[Deep Learning 21-Day Learning Challenge] 3. Use a self-made dataset - Convolutional Neural Network (CNN) Weather Recognition
简单说Q-Q图;stats.probplot(QQ图)
Linear Regression 02---Boston Housing Price Prediction
flink-sql查询配置与性能优化参数详解
(六)递归
二月、三月校招面试复盘总结(二)
安装dlib踩坑记录,报错:WARNING: pip is configured with locations that require TLS/SSL
PostgreSQL模式(Schema)
flink sql left join数据倾斜问题解决
8.30难题留坑:计数器问题和素数等差数列问题
WARNING: sql version 9.2, server version 11.0. Some psql features might not work.
flink自定义轮询分区产生的问题
postgres 递归查询
(九)哈希表
postgresql中创建新用户等各种命令
超详细MySQL总结
NFT市场以及如何打造一个NFT市场