手机图书馆在Android平台基础上的系统构建及实现研究
第 1 章 引言
1.1 课题研究的目的及意义
移动互联网是继承了移动通信和互联网各自优势的融合物,其轻便和通讯便捷的特点使其得以迅速发展[1]。区别于传统的手机,智能手机有一定的运算和存储能力,可以像个人电脑一样安装和卸载第三方应用软件,可以安装像Andorid 这样的操作系统,还能实现无线网络的接入[2]。因此,在这些高科技的技术支持下,手机图书馆是完全可以实现的。
因此,在移动互联网和智能手机飞速发展的今天,越来越多的传统 WEB 上的应用被移植到了智能手机等便携式终端[3]。而基于 Android 平台的手机图书馆管理系统开发,正是顺应了这种趋势。移动互联网服务给图书馆的服务带来了日新月异的变化,通过基于 Android 平台的手机图书馆管理系统的开发,无线网络技术的接入,使得用户突破了时空的限制,可以随时随地的访问图书馆的资源。这样不但能够极大的方便广大用户,而且使用户通过它做到需求信息的实时化,还能够与传统 WEB 上的应用进行良好的互补[4]。
同时,对于广大高校学生来说,智能手机是必不可少,可以说是人手必备的一个物品。人们习惯了用手机来访问网络上的资源。手机图书馆的开发适应了这种需求,拓展了传统的图书馆服务,极大地方便了广大用户,提高了图书馆的服务效率[5]。
..................................
1.2 课题的发展现状
在国内,多数图书馆管理系统都还只存在于传统 WEB 应用上。目前,基于Android 平台的系统的开发还属于一个比较新的领域,开发出来的应用相对也不是很成熟稳重[6]。然而现今,随着智能手机的迅猛发展,仅在传统 WEB 上应用显然已不能满足广大用户的需求,故而基于 Android 平台的手机图书馆管理系统的开发已是势在必行。
1.3 课题的研究内容
本课题开发了一套开放性的手机图书馆管理系统,实现传统 WEB 上应用的部分功能。整个系统主要包括用户登录、书籍查询、用户管理和图书管理等功能模块。系统用户分为两类,普通用户和管理员。两类用户权限不同,但都是在同一个平台上使用。对于普通用户,只能查询指定图书等功能;管理员有所有权限,可以查询用户信息,删除用户账号,更新图书等。
本系统有良好的适用性,国内大部分图书馆都可以使用此系统,同时具有较好的操作性和灵活性,读者可以很方便的查询到所需要的图书馆资源[7]。
本系统基于 C/S 模式开发,系统结构由前台客户端和后台服务器端组成,本系统将服务器布置在 tomcat 上,利用 servlet 提供服务,而系统的客户端使用ANDROID 开发技术实现。系统在两者之间进行数据传输,通过标准数据访问接口 DBC 调用 Oracle 数据库来实现。
...................................
第 2 章 系统实现的相关技术
2.1 Android 开发技术
Android 系统是一个手机开源系统,深受外界好评。它由以下几个部分组成:应用程序、开发库、运行环境和 Linux 内核等[8]。
Android 应用程序包括用户界面、地图、浏览器、通讯录和短信程序等。Android 一般会同一系列核心应用程序包一起发布,该应用程序所有的应用程序都是使用 AVA 语言编写实现的,使用者可进行可视化使用,并掌管所有基本应用功能和数据[9]。
Android 系统定义了 4 种组件类型:Activity 组件定义应用程序的用户界面。Activity 是最核心的程序,所有程序的允许流转都要依靠 Activity ,是开发者用的最多,也是最基本的模块之一。如果把手机比作浏览器, Activity就相当于一个网页。Service 组件执行后台处理。它只能后台运行,不能自己运行,和 Activity 的级别一样,可以和其他组件进行交互。Service 可以运行很长时间,但是没有用户界面。ContentProvider 组件为存储和获取数据提供了统一的接口。ContentProvide 对数据进行封装,不用关心数据存储的细节。Broadcast receiver 用于接收并处理广播通知。利用 BroadcastReceiver 来让应用对另一个外部的事件做出响应,对发送出来的 Broadcast 进行过滤接受并响应的一类组件,是一种应用程序之间传输信息的机制[10]。
Android 是由 Linux+ava 构成的手机操作系统,有着当今最高的可移植性。和其他开发平台相比,Android 有以下特征:应用程序框架、针对手机自足研发的 Dalvi 虚拟机、内部集成的浏览器、优化的图形库、SQLite 用作结构化的数据存储、支持多媒体能力、支持 GSM 技术、拥有强大的开发环境等[11]。
........................................
2.2 开发工具介绍
2.2.1 Eclipse 的介绍
Eclipse 是一个开放性的源代码、虽然其本身只是一个框架和一组服务,但是Eclipse 附带了一个标准的插件集,可以用于通过插件组件构建开发环境,是一个基于 ava 的可扩展开发平台[12]。
Eclipse 的插件机制是轻型软件组件化架构。在客户机平台上,Eclipse 使用插件来提供所有的附加功能,例如支持 ava 以外的其他语言。 已有的分离的插件已经能够支持 C/C++(CDT)、Perl、Ruby,Python、tel 和数据库开发。插件架构能够支持将任意的扩展加入到 现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。Eclipse 的设计思想是:所有皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于 Eclipse 核心之上。Eclipse基本内核包括:图形 API , ava 开发环境插件(DT ),插件开发环境(PDE)等。Eclipse 是一个开放源代码的软件开发项目。它具体包括四个部分:EclipsePlatform、DT、CDT 和 PDE,主要由以下几个项目组成:Eclipse 项目、工具项目和技术项目。PDE 用来支持插件开发、CDT 支持 C 开发、DT 支持 ava 开发、Eclipse Platform 则提供了一个通用的开发平台,是一个开放的可扩展IDE[13]。
要在 Eclipse 工具上进行 android 工程的编写,首先搭建开发环境,第一步先安装好 Eclipse 工具,然后在其上安装 ADT 插件,再指定 SD 正确的路径,这样变可以创建 android 虚拟机了[14]。
2.2.2 MyEclipse 与 Tomcat 介绍
MyEclipse 是一个用于开发 ava, 2EE 的 Eclipse 插件集合,它的功能十分强大,支持广泛。尤其是对各种开源产品的支持十分不错,十分优秀。MyEclipse 有着目前所有主流开源产品的专属 eclipse 开发工具,支持 avaServlet、AAX、SP、EB3、DBC 数据库链接工具等多项功能。利用它可以极大的提高在数据库和 avaEE 的开发、发布等方面的工作效率[15]。
在结构上,我们对 MyEclipse 的特征可进行了划分,主要有以下几类:一是 avaEE 模型、二是 WEB 开发工具、三是 EB 开发工具、四是应用程序服务器的连接器、五是 avaEE 项目部署服务、六是数据库服务、七是整合帮助[16]。
以上都可在 Eclipse 中得到实现。在结构上,其具有的这种特征,使其成为一种功能强大的 avaEE 集成开发环境。MyEclipse 目前已发布了十多个版本,最新版本为 MyEclipse 2021 版本[17]。
.....................................
第 3 章 系统分析...................................... 8
3.1 需求分析概述................................................8
3.2 系统功能模块................................................8
3.2.1 管理员模块 ........................................ 9
3.2.2 普通用户模块 ....................................... 9
3.3 功能需求 ....................................................9
3.3.1 系统用例模型 ................................. 9
3.3.2 系统分包 .......................................... 19
第 4 章 系统设计.................................... 23
4.1 系统架构设计...............................................23
4.2 数据库设计.................................................24
4.2.1 数据库设计原则 .......................................... 24
4.2.2 系统 E-R 图 ................................................. 24
4.2.3 数据库中表的设计 ............................... 26
第 5 章 系统实现..................................... 28
5.1 搭建服务器端...............................................28
5.2 数据库访问的实现...........................................29
5.3 部分代码...................................................29
5.3.1 登录模块 ........................................ 29
5.3.2 书籍查询模块 ............................. 29
5.3.3 用户查询模块 .................................... 30
5.3.4 添加书籍模块 ........................................ 31
5.4 android 客户端的设计 .......................................31
5.5 系统运行部分界面...........................................32
5.5.1 登录界面 .................................... 32
5.5.2 用户书籍查询界面 ................................ 33
5.5.3 管理用户界面 .................................... 34
5.5.4 管理图书界面 ............................... 34
第 6 章 系统测试
6.1 用户登录测试
用户登录分为管理员登录和普通用户登录,普通用户登录需要输入账号和密码并且选择普通用户选项,管理员登录则是输入账号和密码选择管理员选项进行登录操作,普通用户登录成功后进入普通用户主页面,普通用户主页面包括书籍查询和个人借阅信息查询,管理登录成功后进入管理员主界面,管理员主界面包括用户管理和图书管理。
测试无效类:
1.输入错误的普通用户账号或者密码,登录失败,提示重新输入账号或者密码。
2.输入正确的普通用户的账号和密码选择管理员选项进行登录,登录失败,提示账号或者密码错误。
3.输入正确的管理员用户的账号和密码选择普通用户选项进行登录,登录失败,提示账号或者密码错误。
测试有效类:
输入正确的普通用户账号和密码,选择普通用户选项进行登录操作,登录成功进入普通用户主页面。
输入正确的管理员用户账号和密码,选择管理员用户选项进行登录操作,登录成功进入管理员用户主页面。
6.2 书籍管理测试
书籍管理中,有添加图书,删除图书,更新图书,查询图书功能。
6.2.1 添加图书功能测试
添加图书功能可以给图书馆系统添加新的图书。
测试无效类:
书籍添加信息不完整,提示填写完整。
测试有效类:
书籍添加信息完整,添加成功。
6.2.2 删除图书测试
测试无效类:
选择已经外借的图书,选择删除,提示删除失败,该图书未归还。
测试有效类:
选择未被占用的图书选项,选择删除,提示删除成功,该图书放入回收站。
6.2.3 更新图书测试
测试无效类:
选择已经被外借的图书,提示该图书暂不支持操作,请重新选择
测试有效类:
选择没有被外借的图书,进入填写图书信息页面,更改或者添加需要更新的信息,更新成功。
...................................
第 7 章 总结与展望
7.1 总结
本文旨在利用移动互联网和 Andriod 开发技术,设计开发一个基于 Andriod平台的手机图书馆系统,以期为广大图书馆读者提高一种新的服务途径,提升图书馆的服务水平。经过近一年来的努力,通过广泛查阅相关技术文档和资料,研究相关关键技术,利用 UML 统一建模语言进行系统功能需求分析,然后在需求分析的基础上进行系统设计和实现,最后对系统功能进行测试,逐步地完成了本系统设计与实现。
本系统的实现使图书馆读者摆脱了电脑和网络的束缚,可以随时随地的通过移动终端设备访问图书馆的资源,同时图书续借功能可以有效的避免读者超期罚款,此功能深受广大读者好评,变相提升了图书馆服务水平。
通过撰写本论文,我发现所学的知识确实有限,但能够充分利用网络去查阅资料。从中学到了很多东西,培养了独立思考和设计的能力,提高了动手实践操作的能力,相信对今后的学习和工作都深有裨益。
...................................
参考文献(略)