




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安安 徽徽 农农 业业 大大 学学 毕毕 业业 论论 文(设计)文(设计) 论文题目论文题目 安卓数据库应用设计 姓 名 吴志军 学 号 11540086 院 系 经济技术学院 专 业 通信工程 指导教师 张 恒 职 称 讲师 中国中国合肥合肥 二二o一五年一五年 五五 月月 安徽农业大学经济技术学院学士学位论文(设计)开题报告安徽农业大学经济技术学院学士学位论文(设计)开题报告 课题名称安卓数据库应用设计 课题 来源 导师指定 学生姓名吴志军专业通信工程学号11540086 指导教师姓名张恒职称 研 究 内 容 1 通过安卓手机查询学生基本信息。 2 通过安卓手机查询学生考试成绩。 3 掌握安卓数据库的存储与读取。 研 究 计 划 3 月中3 月底 调研、查询资料。 4 月初4 月中 确定系统架构、分析并掌握系统的设计方向与目标。 4 月底5 月中 系统的设计与开发。 5 月下5 月底 整个系统的调试与运行。 6 月初 撰写毕业设计论文。 特 色 与 创 新 1. 设计比较方便,实用性强,稳定性好。 2. 系统具有较强的实际应用价值。成本低,操作简单。 3. 系统稳定,有较大的发展空间。 指 导 教 师 意 见 教 研 室 意 见 学 院 意 见 目录目录 1 1 引言引言. 2 2 背景背景 3 3 系统设计思路系统设计思路 3.1 用户模块 3.2 信息录入 3.3 信息查询 4 4 具体实现具体实现 4.1 用户登录 4.2 用户修改密码 4.3 用户信息录入 4.3 用户信息查询用户信息查询. 5 数据库存储与读取数据库存储与读取 6 系统实现 7 总结总结. 8 参考文献参考文献 9 英文摘要英文摘要 致致 谢谢. 1 安卓数据库应用设计安卓数据库应用设计 学生:吴志军,指导教师:张恒 2 1 引言引言 如今,我们生活在越来越多的依赖以数据为中心和数据如今,我们生活在越来越多的依赖以数据为中心和数据 驱动的世界中。例如亚马逊之类的公司对用户查看和购买过驱动的世界中。例如亚马逊之类的公司对用户查看和购买过 的商品进行信息跟踪,以便于我们能够向用户推荐更多类似的商品进行信息跟踪,以便于我们能够向用户推荐更多类似 产品;如产品;如 Google 之类的公司,存储通过使用它搜索的每一之类的公司,存储通过使用它搜索的每一 条查询,以便在未来能够提供更好的搜索查询建议,我们生条查询,以便在未来能够提供更好的搜索查询建议,我们生 活在一个以数据为中心的世界,开发以数据为中心的应用正活在一个以数据为中心的世界,开发以数据为中心的应用正 是是 现今社会当务之急。现今社会当务之急。 在过去的几年里,智能手机与平板电脑等移动设备的使在过去的几年里,智能手机与平板电脑等移动设备的使 用量一直呈增长的趋势。用量一直呈增长的趋势。Android 系统在各个系统的优势都系统在各个系统的优势都 很突出,很突出,Android 作为一款具有很大潜在用户的智能手机系作为一款具有很大潜在用户的智能手机系 统,发展前景很突出。这篇论文目的是使用统,发展前景很突出。这篇论文目的是使用 Android 数据库数据库 来对学生信息管理系统进行查询与应用,方便大家更快捷的来对学生信息管理系统进行查询与应用,方便大家更快捷的 查询信息。查询信息。 考生成绩查询成绩经历了书信查询,电话查询,网上查询考生成绩查询成绩经历了书信查询,电话查询,网上查询 的几个阶段,其中以网上查询的方式最为普遍,但是许多不的几个阶段,其中以网上查询的方式最为普遍,但是许多不 发达的地区及学生宿舍还不能更好的实现上网,而目前无线发达的地区及学生宿舍还不能更好的实现上网,而目前无线 同步通信网络几乎覆盖全国各地每个地方,只要有一部手机,同步通信网络几乎覆盖全国各地每个地方,只要有一部手机, 可以不受各种环境的影响而轻松获得考生的成绩,因此,开可以不受各种环境的影响而轻松获得考生的成绩,因此,开 发一个发一个 Android 手机查询成绩系统,将有重大的意义。手机查询成绩系统,将有重大的意义。 3 2 背景背景 Android 作为开源的手机客户端操作系统,具有强大的功能,作为开源的手机客户端操作系统,具有强大的功能, 除了电话、短信、上网、游戏娱乐视频等等,自带的除了电话、短信、上网、游戏娱乐视频等等,自带的 sqlite 数据库也十分的强大,而且小巧灵活,还有占用资源少,通数据库也十分的强大,而且小巧灵活,还有占用资源少,通 过开发一个精简的学生信息管理系统充分展示过开发一个精简的学生信息管理系统充分展示 android 数据数据 库操作过程,以及库操作过程,以及 sqlite 数据库的特性。有着重要的意义。数据库的特性。有着重要的意义。 4 3 系统的设计思路系统的设计思路 由于没有学校提供的各种学生各种信息的数据库接口,因此由于没有学校提供的各种学生各种信息的数据库接口,因此 我们只能采用本地存储的方式,录入学生信息,然后查看搜我们只能采用本地存储的方式,录入学生信息,然后查看搜 索等,索等,SQLite,是一款轻型的数据库应用,是遵守,是一款轻型的数据库应用,是遵守 ACID 的的 关系型数据库管理的系统,它包含在一个相对较小的关系型数据库管理的系统,它包含在一个相对较小的 C 库中。库中。 它是它是 D.RichardHipp 建立公有领域项目。它的设计目标采用建立公有领域项目。它的设计目标采用 的是嵌入式,现在目前已经在很多嵌入式产品中都使用了它,的是嵌入式,现在目前已经在很多嵌入式产品中都使用了它, 它占用资源较低,在嵌入式设备里,有可能只需要几百它占用资源较低,在嵌入式设备里,有可能只需要几百 K 的的 内存就足够了,它支持内存就足够了,它支持 Windows/Linux/Unix 等等主流的操等等主流的操 作系统,而在作系统,而在 android 系统中已然集成了,所以采用系统中已然集成了,所以采用 sqlite 作为此管理系统的后台数据库。确定好数据库之后,需要对作为此管理系统的后台数据库。确定好数据库之后,需要对 系统进行详细的设计,其中包括管理员用户的操作:登录、系统进行详细的设计,其中包括管理员用户的操作:登录、 修改登录密码、录入学生信息、录入学生成绩、查询学生信修改登录密码、录入学生信息、录入学生成绩、查询学生信 息、查询学生成绩、删除学生等等操作。息、查询学生成绩、删除学生等等操作。 5 系统设计思路基本框架 用户模块 信息录入信息查询 登录密码 修改密码 个人信息录 入 学生成绩录 入 个人信息查 询 学生成绩查 询 6 3.1 用户模块用户模块 由于整个设计过程采用单用户管理模式,所以只有管理员一由于整个设计过程采用单用户管理模式,所以只有管理员一 个用户,所以使用个用户,所以使用 android sharepreference 类进行管理员类进行管理员 信息的存储,而不采用单独为管理员建立一个数据库表的形信息的存储,而不采用单独为管理员建立一个数据库表的形 式。用户模块主要包括登录。修改密码等。式。用户模块主要包括登录。修改密码等。 3.1.1 登录密码模块登录密码模块 这里管理员的登录由于仅仅涉及保护后台作用,并没有必要这里管理员的登录由于仅仅涉及保护后台作用,并没有必要 单独涉及一个数据库表来存储,因此采用单独涉及一个数据库表来存储,因此采用 android 提供的提供的 SharedPreferences 类将登录信息以键值对的方式保存在类将登录信息以键值对的方式保存在 xml 中。当系统检测到管理员是第一次登录的时候,用户名中。当系统检测到管理员是第一次登录的时候,用户名 和密码都是管理员自己所决定,之后如果再进行登录就需要和密码都是管理员自己所决定,之后如果再进行登录就需要 输入第一次登录的用户名和密码了。设计输入第一次登录的用户名和密码了。设计 UI 如下:如下: 3.1.2 修改密码模块修改密码模块 7 依然采用依然采用 SharedPreferences 类进行管理员用户密码存储类进行管理员用户密码存储 与修改,设计的与修改,设计的 UI 如下如下 登录后的界面设计为登录后的界面设计为 8 3.2 信息录入信息录入 信息录入主要包括学生个人信息的录入和成绩的录入,学生信息录入主要包括学生个人信息的录入和成绩的录入,学生 的个人信息主要有:学院、班级、姓名、学号、电话、性别、的个人信息主要有:学院、班级、姓名、学号、电话、性别、 出生日期等等,依次用出生日期等等,依次用 android 的各种控件进行信息分类采的各种控件进行信息分类采 集。个人成绩需要分学期进行录入。集。个人成绩需要分学期进行录入。 3.2.1 学生个人信息录入学生个人信息录入 学生的基本信息包括学院、班级、姓名、学号、电话、性别、住址、学生的基本信息包括学院、班级、姓名、学号、电话、性别、住址、 出生日期八个内容,这里会遇到一个问题,由于每个学院对应多个班出生日期八个内容,这里会遇到一个问题,由于每个学院对应多个班 级,我们不可能在管理员录入信息的时候在那么多班级中去寻找,这级,我们不可能在管理员录入信息的时候在那么多班级中去寻找,这 里我想到了在淘宝京东购物时,让我们填地址的那种方式,选择一个里我想到了在淘宝京东购物时,让我们填地址的那种方式,选择一个 学院后,下面的班级只是这个学院的班级,这样在手机这样的小屏幕学院后,下面的班级只是这个学院的班级,这样在手机这样的小屏幕 上就很容易找到我们的班级了,这里我们采用上就很容易找到我们的班级了,这里我们采用 spinnerspinner 控件绑定控件绑定 xmlxml 数据源的方式,方便后期维护。数据源的方式,方便后期维护。 其次在填写学生地址的时候,由于考虑到省份和城市对应关系比其次在填写学生地址的时候,由于考虑到省份和城市对应关系比 较多,暂时采用管理员手动输入的方式,后期可能会改成数据库读取较多,暂时采用管理员手动输入的方式,后期可能会改成数据库读取 的方式设计的方式设计 UIUI 如下:如下: 9 10 3.2.2 学生成绩录入学生成绩录入 由于学生的成绩和学期有关,因此不同的学期所学的课程不一样,这由于学生的成绩和学期有关,因此不同的学期所学的课程不一样,这 里采用一个里采用一个 SpinnerSpinner 控件来选择学期,然后动态加载学期相应的课程,控件来选择学期,然后动态加载学期相应的课程, 设计设计 UIUI 如下如下 11 3.3 信息查询信息查询 此次设计的是通过学号进行查询,因为学号可以唯一定位一此次设计的是通过学号进行查询,因为学号可以唯一定位一 位学生,因此通过学号查询即可。根据学号在位学生,因此通过学号查询即可。根据学号在 student 数据数据 库表中查询,将返回的库表中查询,将返回的 cursor 解析后通过解析后通过 listview 控件显控件显 示出来。示出来。 学生个人信息通过学生个人信息通过 listviewlistview 控件将数据库信息显示在页面上,由于控件将数据库信息显示在页面上,由于 学生的成绩和学期有关,因此需要学号和学期两个条件才能查询到正学生的成绩和学期有关,因此需要学号和学期两个条件才能查询到正 确结果,然后通过确结果,然后通过 listviewlistview 将查询到的信息显示出来将查询到的信息显示出来. . 设计的设计的 UI 分别如下分别如下 12 4 具体实现具体实现 4.1 用户登录用户登录 代码实现: 住址 验证正确 4.4.1 用户信息查询 21 代码实现: 垂直布局 4.4.2 用户成绩查询 代码实现: 23 搜索按钮 5 数据库的存储与读取数据库的存储与读取 根据系统设计需求,需要设计相应的数据库表,如学生信息表:studentInfo、学生成绩表: grade_term1 到 grade_term8 这 8 个学期的成绩表,在进行实际的项目开发前可以采用 sqlite administrator 这款软件创出原型进行测试,如 studentInfo 表,其中包括了学生的学院、班级、 学号、姓名、出生年月、电话等等 24 在 android 中,采用 SqliteOpenhelper 类进行设计。 数据库设计是整个系统的核心部分,合理的数据库设计将给数据 的存储和读取带来便利,同时提高效率,节省时间和开销,由于整个 系统只是一个数据库简单应用,不能够将整个学生系统详细的设计, 25 部分数据库表合成了一块,会损失一定的可扩展性。 2.1 画出 E-R 图 1)学生信息表 studentInfo 对应的 android 建表语句为: /创建学生信息表:userinfo db.execSQL(“CREATE TABLE IF NOT EXISTS studentinfo(“ + “student_number VARCHAR(10) PRIMARY KEY NOT NULL,“+ 26 “student_name NVARCHAR(50) NOT NULL,“+ “sex NVARCHAR(5) NOT NULL,“+ “class NVARCHAR(20) NOT NULL,“+ “institute NVARCHAR(50) NOT NULL,“+ “phone VARCHAR(11) NOT NULL,“+ “address NVARCHAR(100) NOT NULL,“+ “birthday NVARCHAR(30) NOT NULL“+ 2) 学生成绩表:studentgrade 对应的 android 建表语句为: /创建学生成绩表 db.execSQL(“CREATE TABLE IF NOT EXISTS studentgrade(“ + “student_number VARCHAR(10) NOT NULL,“ + “course_id INTEGER NOT NULL,“+ 27 “grade VARCHAR(4) NOT NULL,“+ “term VARCHAR(2) NOT NULL“+ “)“); 3 )学生课程表:studentcourse 对应的 android 建表语句为: /创建学生课程表 db.execSQL(“CREATE TABLE IF NOT EXISTS studentcourse(“ + “course_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,“+ “course_name NVARCHAR(30) NOT NULL,“+ “credit INTEGER NOT NULL,“+ “term VARCHAR(2) NOT NULL“+ “)“); 28 1)数据库创建 在 android 中,采用 SQLiteOpenHelper 类进行 设计。注意,为了简化设计,这里默认是同一个学期,每个学生的课 程种类为一样,即所有学生在第一学期都会上数学、英语、体育等, 在第三学期都要上计算机、思修等等。 在构造方法 DataBaseHelper()中做好数据库名称、版本的信息的 设置,在 onCreate 方法中创建数据库表如: studentinfo,studentgrade,studentcourse 2) 数据存储 和标准 SQL 一样,采用 insert 语句进行数据的插入, 并保存在相应的表中。 3) 数据读取 和标准的 SQL 语句一样,采用 select 语句进行数 据的读取,其中在学生成绩查询时涉及 join 操作。 6 系统实现系统实现 打开 ADT 右击 SIMS 工程,点击 android tool ,然后点击 export signed application package 29 30 31 32 33 源代码由 java 在 ADT 里编写的,apk 安装包由 ADT 自动的 android tool 打包的。打包后生成 SIMS 系统。直接安装在安装在安卓手机上。SIMS 的全英文名为 Student Information Management System 学生信息管理系统,因此软件名称叫做 SIMS。 7 总结总结 从刚迈入大学到现在已经过去了四年的时间,在这四年里学到了不少知识。从二月份准备论 文到现在,从刚开始的毫无头绪到现在的井井有条,每一次的成功与失败都看在眼里,记在 心里。收货很多。回顾系统的设计当中,由于各种环境因素的影响,在管理系统当中有可能 会有一些小问题,可以说系统还有很大进步的空间,后续工作需要付出更多的努力。 此次课程的主要目的就是把 Android 引用到软件开发的各个阶段,并且尝试探索一种更适合 的项目,在具体的设计当中,学会了通过了具体项目研究过程,软件系统的开发必须必须注 重社会需求 ,满足大家的要求,让大家更快捷的得到自己想得到的东西。 8 参考文献参考文献 Android 应用开发揭秘杨丰盛 机械工业出版社 Android 基础教程Ed Bumette 人民邮电出版社 34 JAVA 编程思想机械工业出版社 2007.6 9 英文摘要英文摘要 Android database application design Name:Wu zhi jun (School of Information & Computer, Anhui Agricultural University, Hefei 230036) Abstract:As open source Android mobile phone client operating system, have powerful function . Own sqlite database is also very strong. By developing a simplified students show android database information management system operation process, as well as the characteristics of
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船舶行业安全生产相关要求解读
- 医疗行业招聘面试实战模拟试题:临床医学专业
- 三减健康知识培训心得课件
- 保山医疗岗位申请必 备面试题库
- 临床执业医师能力提升B卷题库及完整答案详解【夺冠】
- 如何制定自己的学习计划
- 人才争夺战:大厂人资面试题库精 编
- 小儿艾柱灸课件
- 期货从业资格之《期货法律法规》通关测试卷及答案详解(基础+提升)
- 大学电子商务专业实习生自我鉴定
- 医院综合门诊部综合管理体系建设
- 2025年中医师承出师考试题库
- 陕西省专业技术人员继续教育2025公需课《党的二十届三中全会精神解读与高质量发展》20学时题库及答案
- 剑桥英语二级全册词汇汇总
- 机修钳工培训
- 血透室消毒隔离制度课件
- 调节阀计算书(带公式)
- 医德医风建设培训课件
- 通信工程竣工资料模板(通用版)
- 中国半导体行业投资深度分析与展望
- 应急中心组织架构
评论
0/150
提交评论