基于 Android 的移动选课系统的设计
摘 要
随着互联网的不断发展以及高等教育与教学的改革,高校的选课方式已经从
传统的纸质方式转向了网上选课方式。近年来,随着智能手机等移动设备的不断
普及,移动选课将是继互联网选课之后的又一种选课模式。网上选课系统的软件
较多,但具体的移动选课软件相对较少。针对这个情况,本文讨论在广泛应用的
Android 平台上设计与开发移动选课系统。
本设计作为现有基于 Web 的网上选课系统的辅助手段和重要补充,旨在为广
大学生提供随时随地方便快捷的选课方式。通过初步对 Android 软件开发技术和
Java Servlet 编程技术的学习以及对现有选课系统的分析和研究,结合移动互联网
的特点,总结出移动选课系统所应具备的主要功能。运用信息系统开发方法等技
术手段对该系统进行了整体的规划、设计与实现。该系统具有用户登录、选课、
退选、查看选课信息等基本的功能。该系统分为系统登录、选课信息、选课、退
选、已选课查询等模块。在移动选课系统的设计与实现过程中,采用了 C/S 架构、
Http 通信协议;服务器通过 JDBC 与数据库进行交互,手机通过流的形式接收从
Web 服务器传来的数据。
关键词:移动选课,Android,Java Servlet,C/S 架构
I
Design Of Mobile Elective Course System Based On Android
ABSTRACT
With the development of the internet and the college education’s revolution,
universities’ course electing form has changed to internet course electing form from
traditional one which uses paper materials. Nowadays, PDA phone and other mobile
instruments have explored a very broad way in this society. Mobil elective course
system is one another system which uses the internet to choose course. There are a few
of soft wares appearing on the internet about course electing. However, there are little
soft wares have the functions about Mobil elective course system. Under this situation,
this system wrote this essay mainly talking about how to broadly use the Android
system to design and explore Mobil elective course system.
This essay as the supplementary ways based on some existing internet course
electing systems is mainly to provide convenient and efficient ways for students’ course
electing needs. After the basic study about the Android system exploration and the Java
Servlet programming technology, this system combined the Mobil internet’s characters
to get a summary which is about Mobil elective course system main functions. Through
some system exploitation this system made a project about it. This system has some
parts such as: system register, course elective information, course electing, course
canceling, checking about the chosen courses, etc. During this designing process, this
system used C/S and Http. The server uses JDBC date resource to communicate. The
phone use flow as the way to receive date from Web server.
KEY WORDS: Mobile Elective Course,Android,Java Servlet,C/S
II
目 录
前 言 ...........................................................................................................1
第 1 章 绪论 ................................................................................................ 2
1.1 选课系统的现状 ............................................................................2
1.2 Android 系统特点 .........................................................................2
1.3 基于 Android 的移动选课系统概述 ..........................................3
1.3.1 基于 Android 的移动选课系统描述 .............................. 3
1.3.2 基于 Android 的移动选课系统意义 .............................. 3
第 2 章 环境配置 ........................................................................................4
2.1 软件环境 ........................................................................................4
2.1.1 Android 开发环境的搭建 ..................................................4
2.1.2 SQL Server 数据库配置 .................................................... 6
2.2 硬件环境 ........................................................................................7
第 3 章 系统分析 ........................................................................................9
3.1 系统设计的原则和目的 ...............................................................9
3.2 需求分析 ........................................................................................9
3.2.1 系统模块 .............................................................................9
3.2.2 客户端与服务器的连接方式 ........................................ 10
3.2.3 系统结构 ...........................................................................10
第 4 章 系统设计 ......................................................................................11
4.1 该系统的整体结构 .................................................................... 11
4.2 数据库设计 ................................................................................. 11
4.2.1 数据库结构设计 ..............................................................11
4.2.2 数据库各表的设计 ......................................................... 12
4.3 服务器设计 ................................................................................. 14
4.3.1 Java Servlet 程序 ..............................................................14
4.3.2 与数据库交互的程序 ...................................................... 15
4.4 Android 客户端设计 ...................................................................15
4.4.1 Android 客户端的页面设计 ........................................... 15
III
4.4.2 Android 客户端各页面之间的关系 .............................. 16
第 5 章 系统的实现 ................................................................................. 17
5.1 客户端的实现 .............................................................................17
5.1.1 系统主界面的实现 ......................................................... 17
5.1.2 系统登录模块的实现 ..................................................... 17
5.1.3 已选课程查询模块的实现 .............................................20
5.1.4 退选模块的实现 ..............................................................21
5.1.5 可选课程信息模块的实现 .............................................21
5.1.6 选课模块的实现 ..............................................................22
5.2 服务器端的实现 .........................................................................23
5.3 客户端与服务器端的通讯 ....................................................... 25
第 6 章 测试 .............................................................................................. 27
6.1 测试的作用和意义 .................................................................... 27
6.2 测试方法 ..................................................................................... 27
6.3 测试内容 ..................................................................................... 28
6.4 测试结果 ..................................................................................... 29
6.5 测试结论 ..................................................................................... 29
结 论 .........................................................................................................31
谢 辞 ...........................................................................................................32
参考文献 .....................................................................................................33
IV
前 言
近年来,随着我国高等教育与教学的改革,数字信息化的教学管理系
统在高校日趋广泛,伴随着学年制管理体制向学分制管理体制的发展,使
得网上选课系统在高校中得到广泛的应用。传统的选课系统是以固定的形
式访问互联网。这样,虽然能够满足大部分学生的选课需要。但是在选课
高峰时期,学校的 Web 服务器因访问量过大而暂时瘫痪,学校机房的电脑
数量有限难满足学生们的选课需求。有时为了选择到自己喜欢的课程,往
往要提前半小时到一个小时在计算机上登录选课系统,守候在计算机旁边,
而不能做到随时随地的选课。
同时,随着科技的发展,搭载 Android 操作系统的智能手机依靠其庞
大的应用程序和越来越低廉的价格吸引了广大的用户。在如此庞大的用户
基数影响下,移动互联网技术得到了飞速的发展,我国的网民也正在从传
统的互联网向移动互联网转移。在大学生中,智能手机用户也占有相当大
的比例。因此,学生需要另一种的选课系统来解决当前选课系统存在的问
题,来分流由于传统网络访问给服务器带来的压力。基于 Android 的移动
选课系统应运而生。
如今,高校的网上选课系统都是比较成熟完善的。移动选课系统只是
现有网上选课系统的补充。基于上述考虑,客户端与服务器之间的通信采
用 Http 通信协议。用 C/S 模式来建立移动选课系统比较合适。服务器端采
用 SQL 数据库服务器,Tomcat Web 服务器以及 Java Servlet 的 Web 服务
器编程技术构建移动选课的应用服务系统;客户端采用 Android 平台的客
户端软件用来登录服务器。
开发基于 Android 的移动选课系统的意义在于:对当今流行的 Android
软件有深入的了解,发现在开发过程中所面临的问题,简化选课程序,方
便同学们的选课。同时,为今后开发出适合我校情况的移动选课系统打下
基础。
1
第 1 章 绪论
1.1 选课系统的现状
现在大多数的高校的选课系统都是采用的浏览器/服务器(B/S)模式,
这种模式相对最初的人工课程管理方便了许多,不在需要大量的人力,学
生选课也不在排队拥挤,更不会因为选课而耽误正常的教学任务。B/S 模
式的选课系统只需要一台能访问网络的浏览器即可。只要选课服务器端提
供选课、学籍管理、考试成绩、毕业设计等业务模块,在客户端的浏览器
视窗中就能进行相应模块的功能管理。随着移动互联网的发展这种 B/S 模
式的选课系统也存在很多不足,比如要进行选课操作时,就必须坐在接入
网络的电脑前:而且课程开设的通知等等也是要通过上网才知道,对于一
些不常上网的同学可能就会错过很多有用的消息,比如说课程调整通知、
考试安排等等。而这些缺陷都可以通过移动终端来解决。
1.2 Android 系统特点
近几年,3G 的全球覆盖使世界快速步入移动互联网时代,网络的应用
范围变得更加广泛,移动智能终端在市场上迅速渗透,成为移动互联网发
展的强大动力。根据市场调研机构 Gartner 发布的最新统计报告显示,2011
年一季度全球手机销售量共 4.278 亿部,其中智能手机销量超过 1 亿部,
现在高校师生的智能移动通讯设备拥有率已经和 PC 拥有率相近。而智能
手机操作系统中,Android 系统的市场份额又远远大于其他的手机操作系
统。Android 是 Google 于 2007 年 11 月 5 日发布的基于 Linux 内核的移动
平台,该平台由操作系统、中间件、用户界面、应用软件组成;从软件分
层的角度来说,Android 平台由应用程序、应用程序框架、Android 运行时
库层以及 Linux 内核共 4 部分构成,是一个真正开放的移动平台。
2
1.3 基于 Android 的移动选课系统概述
1.3.1 基于 Android 的移动选课系统描述
基于 Android 的移动选课系统是学校网上选课系统的补充,该系统的
客户端运行于当下最流行的智能手机操作系统——Android 智能手机操作
系统之上。通过 GPRS(通用无线分组业务)或 WLAN(无线局域网)等
无线数据传输平台,在我校集中的选课时间为我校的在校学生建立使用移
动终端随时随地访问我校的选课系统的平台,了解选课信息,查询选课结
果,及时、快速、准确的选择喜欢的课程。
1.3.2 基于 Android 的移动选课系统意义
基于 Android 的移动选课系统的用户无论是在公交车,在商场,还是
在没用电脑的宿舍。只要通过搭载有该客户端的 Android 手机就能随时随
地的登陆系统进行选课。从而使用户远离的电脑的束缚,在学校集中选课
的时间可以不用去机房排队等候选课,大大地提高了学生选课的效率。
3
第 2 章 环境配置
2.1 软件环境
2.1.1 Android 开发环境的搭建
1. 安装 JDK
Sun 公 司 为 所 有 的 java 程 序 员 提 供 了 一 套 免 费 的 java 开 发 和 运 行 环
境 。 可 以 通 过 访 问 Http://java.sun.com/j2se, 根 据 提 示 下 载 支 持 Windows
操作系统的 JDK 到本地硬盘。
安装的时候可以选择安装到任意的硬盘驱动器上。正确安装之后,在
JDK 目录下有 bin、demo、lib、jre 等子目录。然后是设置 JDK 的环境变
量,其设置方法如下:
在 Windows 操作系统下,用鼠标右键单击【我的电脑】,弹出菜单选
择【属性】,弹出【系统特性】对话框,再单击该对话框中的【高级选项】,
然后单击【环境变量】按钮,添加如下的系统环境变量。
变量名:PATH
变量值:D:\java\bin;%PATH%(其内容根据 JDK 安装的目录变化)
设置完成点击【确定】即可。
2. Eclipse 的安装
访 问 http://www.eclipse.org/downloads/ , 下 载 Eclipse IDE for Java
Developers(92M)的 win 32bit 版,解压后即可使用。
3. Android SDK 安装
在 Android Developers 下载 android-sdk_r05-windows.zip,下载完成后
解压到任意路径。
运行 SDK Setup.exe,点击 Available Packages。如果没 有出现可安装
的 包 , 请 点 击 Settings , 选 中 Misc 中 的 "Force https://..." 这 项 , 再 点 击
Available Packages 。
选择希望安装的 SDK 及其文档或者其它包,点击 Installation Selected、
Accept All、Install Accepted,开始下载安装所选包
4