《Android程序设计教程》课件第七章 Android数据存储.pptx

上传人(卖家):momomo 文档编号:7647911 上传时间:2024-05-19 格式:PPTX 页数:23 大小:161.76KB
下载 相关 举报
《Android程序设计教程》课件第七章 Android数据存储.pptx_第1页
第1页 / 共23页
《Android程序设计教程》课件第七章 Android数据存储.pptx_第2页
第2页 / 共23页
《Android程序设计教程》课件第七章 Android数据存储.pptx_第3页
第3页 / 共23页
《Android程序设计教程》课件第七章 Android数据存储.pptx_第4页
第4页 / 共23页
《Android程序设计教程》课件第七章 Android数据存储.pptx_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、让IT教学更简单,让IT学习更有效Android程序设计教程第七章 Android数据存储目录 7.1 数据存储方式简介 7.2 文件存储 7.3 SharedPreferences的使用 7.4 SQLite数据库存储 7.5 LitePal操作数据库学习目标 了解数据存储方式的特点 掌握文件存储、SharedPreferences存储的使用 掌握SQLite数据库的增、删、改、查的使用 掌握LitePal插件操作数据库7.1 数据存储方式简介 Android中五种不同数据存储方式:文件存储 SharedPreferences存储 SQLite数据库存储 网络存储 ContentProvid

2、er7.2 文件存储 Android中的文件存储与Java中的文件存储类似,都是以I/O流的形式把数据存储到文件中。不同点在于Android中的文件存储分为外部存储和内部存储两种。外部存储就是指把文件存储到一些外部设备上,例如SD卡、设备内的存储卡等,属于永久性存储方式。使用这种类型存储的文件可以共享给其他的应用程序使用,也可以被删除、修改、查看等,它不是一种安全的存储方式。内部存储是指将应用程序的数据,以文件的形式存储在应用程序的目录下(data/data/files)。这个文件属于该应用程序私有,如果其他应用程序想要操作本应用程序的文件,就需要设置权限。内部存储的文件随着应用程序的卸载而删

3、除,随着应用程序的生成而创建。7.3 SharedPreferences的使用 SharedPreferences是一个轻量级的存储类,特别适合用于保存软件配置参数,例如用于登录时的用户名、密码、性别等参数。SharedPreferences保存数据,其实质是用xml文件存放数据,文件存放在/data/data/shared_prefs目录下。在使用SharedPreferences进行数据操作的基本步骤如下:(1)使用getSharedPreferences()方法获取一个SharedPreferences实例对象。(2)使用SharedPreferences实例对象的edit()方法,获取

4、SharedPreferences.Editor编辑对象。(3)使用SharedPreferences.Editor编辑对象的putXxx()方法来保存数据。(4)使用SharedPreferences对象的getXxx()方法来读取数据。(5)使用SharedPreferences.Editor编辑对象的commit()方法将数据提交到XML文件中。7.4 SQLite数据库存储 SQLite数据库比传统的数据库更加适用于嵌入式系统,因为它占用空间非常少,运行高效可靠,可移植性好,并且提供了零配置(zero-configuration)运行模式。SQLite数据库的优势在于其嵌入到使用它的应

5、用程序中。这样不仅提高了运行效率,而且屏蔽了数据库使用和管理的复杂性,程序仅需要进行最基本的数据操作,其它操作可以交给进程内部的数据库引擎完成。7.4.1 创建数据库 Android为了能够更加方便地管理数据库,专门提供了一个SQLiteOpenHelper帮助类。该类是一个抽象类,具有onCreate()和onUpgrade()两个抽象方法,这就意味着我们需要创建一个自己的帮助类去继承它,然后分别在这两个方法中去实现创建、升级数据库的逻辑。SQLiteOpenHelper帮助类中还有两个非常重要的实例方法:getReadableDatabase()和getWritableDatabase()

6、方法。这两个方法都可以创建或打开一个现有的数据库,并返回一个可对数据库进行读写操作的对象。SQLiteOpenHelper帮助类中还有两个构造方法可供重写,一般使用参数少一点的构造方法即可。这个构造方法中接收4个参数,第一个参数是Context,必须要有它才能对数据库进行操作;第二个参数是数据库名,创建数据库时使用的就是这里指定的名称;第三个参数允许我们在查询数据的时候返回一个自定义的Cursor,一般都是传入null;第四个参数表示当前数据库的版本号,可用于对数据库进行升级操作。7.4.2 升级数据库 当我们需要对数据库中的表进行删除或增加时,就可以使用SQLiteOpenHelper帮助类

7、中onUpgrade()方法。7.4.3 添加数据 对数据的操作无非有四种,即CRUD,其中C代表添加(Create),R代表查询(Retrieve),U代表更新(Update),D代表删除(Delete)。Android提供了一系列的辅助性方法,使得在Android中不去编写SQL语句,也能轻松完成所有的CRUD操作。SQLiteDatabase类中提供了一个insert()方法,这个方法就是专门用于添加数据的,其返回值是新数据插入的位置,即ID值。它接受三个参数:第一个参数指定需要添加数据的表名;第二个参数用于在未指定添加数据的情况下给某些可为空的列自动赋值NULL,直接传入null即可;

8、第三个参数是一个ContentValues对象,它提供了一系列的put()方法重载,用于向ContentValues中添加数据,只需要将表中的每个列名以及相应的待添加数据传入即可。7.4.4更新数据 SQLiteDatabase类中也提供了一个非常好用的update()方法,用于对数据进行更新。这个方法接收四个参数,第一个参数和insert()方法一样,也是表名,在这里指定去更新哪张表里的数据;第二个参数是ContentValues对象,就是要把更新数据在这里组装进去;第三、第四个参数用于约束更新某一行或某几行中的数据,不指定的话就是默认更新所有行。7.4.5 删除数据 SQLiteDatab

9、ase类中也提供了一个非常好用的delete()方法,用于删除数据。这个方法有三个参数,第一个参数仍然是表名,第二、第三个参数是用于约束删除某一行或某几行的数据,不指定的话默认就是删除所有行。7.4.6 查询数据 SQLiteDatabase类中还提供了一个query()方法用于对数据进行查询。这个方法的参数非常复杂,最短的一个方法重载也需要传入7个参数。7.5 LitePal操作数据库 LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)的模式,并将我们平时开发最常用到的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成各种建表和增删改查的操作。7.

10、5.1 配置LitePal LitePal是一款开源的Android数据库框架,采用了对象关系映射的模式。首先需要在GitHub上去下载LitePal开源库,其下载地址是https:/ As Library”选项,在弹出的对话框中点击“确定”按钮即可。打开app/build.gradle文件,在dependencies闭包中看到自动添加了如下内容:implementation files(libs/litepal-1.6.1.jar)则说明LitePal开源库加载成功。其中最后的1.6.1是版本号的意思。(2)需要配置litepal.xml文件。右击app/src/main目录NewDirectory,创建一个assets目录,然后在assets目录下再新建一个litepal.xml文件,并编辑litepal.xml文件中的内容如下。其中,标签用于指定数据库名,标签用于指定数据库版本号,标签用于指定所有的映射模型。(3)配置LitePalApplication,打开AndroidManifest.xml文件,在标签内添加如下代码:android:name=org.litepal.LitePalApplication 谢谢

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《Android程序设计教程》课件第七章 Android数据存储.pptx)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|