第一章主要介绍了本系统的选题背景,叙述了选题的研究意义以及国内外研究现状与存在的问题,给出了本文的主要工作内容以及各章节的内容安排。
第二章主要介绍本系统所使用的开发环境及工具、关键技术及其研究,包括安卓端关键技术如Activity、Intent等,JavaEE端关键技术框架如Spring、SpringMVC、Hibernate等,前端、云端以及其他关键技术。
第三章主要介绍了本系统的总体设计,对系统的主要功能做了详细描述,阐述了系统的总体设计思路,包含了本系统的各功能模块及其作用。重点说明了系统总体架构设计,图文并茂地描述了各服务端之间的关联关系及其相互作用。最后详细说明了本系统的数据库设计。
第四章详尽介绍了本系统的详细设计与实现,按照各部分的具体模块功能进行顺序介绍,并对系统的各个功能展示了运行结果。
最后总结了本论文研究的重点问题,并且提出了需要改进及需要进一步研究解决的问题,最后展望了未来需要研究的工作和问题。
第二章 系统开发关键技术
目前,基于安卓平台和JavaEE平台开发的软件及系统是比较成熟可靠的,同时由于安卓平台和JavaEE平台的开源特点,使得数以万计的开发者在使用Java语言在这两个平台(移动端和服务端)上开发,为这两个平台贡献自己的代码。因此结合本系统的开发需求,考虑到这两个平台的特点与优势,本系统也采用这两个平台进行开发,开发过程中在安卓端主要用到了Activity、Intent、HttpClient通信等安卓关键技术。在JavaEE端主要用到了Spring、SpringMVC、Hibernate、Maven等JavaEE的关键技术框架,前端采用EasyUI框架进行页面架构、数据缓存以及与后台接口的数据交互。云存储部分选择了百度云存储BOS服务,实现对考试资源以及问卷资源的存储及管理。
2。1 开发环境及工具
本系统在Windows7操作系统环境下开发,服务端程序可部署在装有任意系统的服务器环境下,移动端程序可部署在搭载安卓4。2系统及以上的智能手机中,整个开发过程中使用了如下开发工具及环境:
(1)MyEclipse2015:负责编写安卓后台接口、教师后台管理系统
(2)ADT(Android Developer Tools):负责编写安卓端主程序
(3)百度云BOS存储服务:负责考试资源以及问卷资源的存储及管理
(4)Mysql5。5数据库:负责整个系统数据的存储
(5)JDK1。7。0_51:Java开发版本
(6)Tomcat7。057Web应用服务器:负责后台接口和后台管理系统的部署
(7)Genymotion安卓模拟器、安卓真机:负责安卓端程序的模拟测试、运行
2。2 安卓端关键技术
2。2。1 Activity
本系统中在线考试移动客户端以Activity作为APP的界面逻辑主体,为界面和业务逻辑提供了整合容器,起到了中坚基石的作用。
Activity是安卓程序中最主要的四大组件之一,其相当于安卓程序的骨架。用户与安卓应用的交互都在Activity上进行,包括打游戏、打电话、发短信等操作。
在安卓中Activity有四种基本的状态[8],如图2-1:
图2-1 安卓Activity生命周期图
(1)运行状态
可以与用户进行交互的,处于栈链最顶端的“活动”就处于运行状态。
(2)暂停状态
被一个非全屏的“活动”覆盖并且失去焦点,此时可见但不可交互。
(3)停止状态
当“活动”被覆盖,本身不可见时,此时该“活动”处于停止状态。
(4)销毁状态
当“活动”被系统内存回收机制回收时,该“活动”就被销毁。