摘 要
随着我国经济快速发展,人们的出行活动越来越频繁,对行业服务的快捷、便利等
要求也越来越高。而各地、市汽车客运站作为全社会交通系统一个重要的组成部分,在
该系统中扮演着重要角色。由于目前客运站均为独立经营的法人机构,受经营体制条块
的限制,各自经营本站的业务,并且存在着相互的商业竞争,彼此之间合作基本没有,
造成乘客只能在客运站售票窗口或其特定的代销点购买该客运站始发的客运班次车票。
遇上客运高峰时期,会出现一些客运站的乘客到站也买不到车票,而另一些客运站有剩
余车票没有乘客购买的现象。同时,由于整个行业信息通畅不够,造成行业管理部门进
行决策、管理上的诸多困难。Android系统的出现,给移动互联网时代带来了新的发展。
为了适应现代公路客运售票管理的需求,采用新信息技术,研究设计了一个基于安卓的
区域智能一体化公路客运售票管理平台的设计与实现。通过此系统,可以极大地提高售
票效率,给乘客提供最便捷的购票方式。该方案主要包括后台管理功能、Web服务器、
网络、Android公路客运售票管理系统前端等部分组成,并采用了JAVA、ANDROID、JSP
技术,MYSQL数据库,利用MyEclipse、TOMCAT、Dreamweaver等开发环境以及开发工具。
论文主要介绍了本系统的开发背景,所要完成的功能和开发的全过程。
[关键词]:Android,公路客运售票管理,Java,Web 服务器
I
Abstract
With China's rapid economic development, people's travel activities are more frequent,
fast and convenient service to the industry and other requirements are also increasing. And
around the city bus terminal as society as a whole transportation system is an important
component plays an important role in the system. Due to the current terminal are independent
legal entity operating , restricted operating system bars , each operating site business , and
there is a mutual business competition , basically no cooperation among themselves , resulting
in a passenger ticket passengers only window or a specific sales points to purchase passenger
flights originating in the passenger ticket . Case of passenger peak period, there will be a
number of passengers arriving passenger terminal can not buy a ticket, while others have
surplus Terminal passengers to buy tickets no phenomenon. Meanwhile, due to the
insufficient flow of information throughout the industry resulting in industry management
decision-making, there are many difficulties in management. Android system appears, to the
mobile Internet era has brought new development. In order to meet the needs of modern road
passenger ticket management, the use of new information technologies, research and design
based on the design and implementation of a regional Andrews intelligent integration of road
passenger ticket management platform. With this system, you can greatly improve the
efficiency of the ticket, to provide passengers with the most convenient way ticket. The
program includes background management functions, Web servers, network, Android front
road passenger ticket management system and other components, and the use of JAVA,
ANDROID, JSP technology , MYSQL database using MyEclipse, TOMCAT, Dreamweaver
and other development environments and development tools . Paper describes the function
and development of the whole process of the development background of the system, to be
completed.
[Keywords]: Android, road passenger ticket management, Java, Web server
II
目 录
Abstract.................................................................................................................................... II
第一章 开发环境介绍..............................................................................................................1
1.1 JAVA 编程环境介绍.....................................................................................................1
1.1.1 JAVA 介绍..........................................................................................................1
1.1.2 JAVA 环境配置..................................................................................................2
1.2 Android 概述.................................................................................................................3
1.2.1 Android 的产生...................................................................................................3
1.2.2 Android 的平台架构...........................................................................................4
1.2.3 Android SDK 的开发环境..................................................................................5
1.3 Tomact 概述.................................................................................................................. 5
1.3.1 Tomcat 的简介....................................................................................................5
1.3.2 Tomcat 的安装....................................................................................................6
1.4 Mysql 数据库介绍........................................................................................................6
第 2 章 需求分析....................................................................................................................7
2.1 需求分析重要性..........................................................................................................7
2.2 功能需求......................................................................................................................8
2.3 性能需求......................................................................................................................8
2.4 可行性分析..................................................................................................................9
第 3 章 总体设计..................................................................................................................10
3.1 总体设计重要性........................................................................................................10
3.2 系统架构图................................................................................................................10
3.3 数据模型图................................................................................................................ 11
第 4 章 详细设计..................................................................................................................13
4.1 资源规划....................................................................................................................13
4.2 系统数据库设计........................................................................................................14
4.3 界面设计....................................................................................................................15
第 5 章 系统编码实现..........................................................................................................18
III
5.1 用户登录实现............................................................................................................18
5.2 用户注册实现............................................................................................................20
5.3 已购车票查询功能实现............................................................................................21
5.4 查询车次信息功能实现............................................................................................23
结 论......................................................................................................................................26
参考文献..................................................................................................................................27
致 谢........................................................................................................................................28
IV
第一章 开发环境介绍
1.1 JAVA 编程环境介绍
1.1.1 JAVA 介绍
Java,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java
平台的总称。
Java 有以下特点:第一,平台无关性 ,Java 能运行于不同的平台。Java 引进虚拟
机原理,并运行于虚拟机,可以在 Windows 操作系统、Linux 操作系统以及 Mac 操作系
统中运行。使用 Java 编写的程序能在世界范围内共享。第二,安全性 ,学过 C++的人,
再学 Java,就感觉比较容易,因为他们的编程模式很类似。不同的是,操作存储器地址
被 C++保留,但是被 java 抛弃,,运行程序的时候,操作系统自主的对内存进行分配,
这样可以使系统安全,防止被通过指针的病毒所感染。第三,面向对象,Java 也是面向
对象编程,类中对数据进行封装,利用这种方便性,使程序更加简洁性和便于维护性。
Java 具有很多有关对象的特性,比如类的封装性和继承性,使用这些特性,只需编译一
次程序代码,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计
和应用上。第四 ,分布式,在扩展 TCP/IP 网络平台上建立 Java。为了使网络上的文件
和使用本机一样方便,可以用库函数提供的方法,这些方法是用 HTTP 和 FTP 协议传送
和接受信息。第五,健壮性。在编译和运行时,Java 可以有效的检查错误。许多开发早
期出现的错误可以通过类型检查发现。
为了能有效的减少内存出错的可能性,Java 自己操纵内存。为了实现避免了覆盖数
据的可能,Java 还实现了真数组,Null 指针检测、数组边界检测、异常出口、Byte code
校验等功能也在 Java 中得到体现,通过使用这些功能特征, Java 应用程序的开发周期
大大得到改善。[2]。
Java 的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深
远的影响:
(1).软件要能满足软件平台上互相操作,也要满足具有可伸缩性和重用性并可即插
即用等分布式计算模式的需求,同时也要满足软件 4A 目标要求,也就是能达到任何人
在任何地方在任何时间对任何电子设备都能应用。
(2). CORBA 国际标准软件体系结构和多层应用体系框架,是从构建开发方法中崛起
的。Java.2 平台和.NET 平台两大派系也在此基础上形成,推动了整个 IT 业的发展。
(3).对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服
务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑
自我,B2B 的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的
商机,新的管理。
(4).重视了开发团队的文化培养,注重协作,创作,责任,诚信。开发各个阶段的
重要技术都利用平台的基础设施服务,重视使用第三方构件集成,对软件开发带来了新
的革命。
总之,目前以看到了 Java 对信息时代的重要性,未来还会不断发展,Java 在应用
方面将会有更广阔的前景。
1.1.2 JAVA 环境配置
SUN 公司提供了多种操作系统下的 JDK,这里我是在基于 Windows 平台下的
(C:\Program Files\Java\jdk1.5.0_06)安装目录,其中 bin 子目录中包含了所有相关的可执
行文件。
下面就以 J2SDK+Tomcat 作为 java 引擎方案介绍在 Windows XP 操作系统下配置
过程。
1.软件准备先从官方网站下载 J2SDK 和 Tomcat 软件,jdk-1_5_0_10-windows-i586
-p.exe 和 apache-tomcat-5.5.20.exe 以及 ORACLE 数据库的安装文件 OracleXEUniv.exe.
2.安装 J2SDK
(1) 在 Windows 下,直接运行下载的 jdk-1_5_0_10-windows-i586-p.exe 文件,根据
装向导安装到一个目录下,例如安装到 C:\ jdk1.5.0_10。(2) 添加环境变量用鼠标单击
“我的电脑”图标,在弹出的快捷菜单中选择[属性]→[系统特性]→[高级]→[环境变
量]命令,在弹出的对话框中即可编辑系统的环境变量。添加 JAVA_HOME、PATH、
JRE_HOME 和 CLASSPATH 四个变量,变量值如下:
JAVA_HOME= C:\Program Files\Java\jdk1.5.0_06。
Path=%JAVA_HOME%\bin;%CATALINA_HOME%\common\lib;%JAVA_HOME%\jre
\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem。
JRE_HOME= C:\Program Files\Java\jdk1.5.0_06\jre。
CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%CATALINA_H
OME%\common\lib。
3. jakarta-tomcat-5.0.28 的安装
直接运行下载的 jakarta-tomcat-5.0.28.exe 文件,按照一般的 Windows 程序安装步骤
即可安装好 Tomcat,安装时,它会自动寻找 J2SDK 的位置。Tomcat 成功启动后,在浏览
器中输入 http://localhost:8080,如果出现 Tomcat 安装成功界面则说明安装成功。添加
CATALINA_HOME、CLASSPATH、Path 三个变量,变量值如下:
CATALINA_HOME= C:\Program Files\Apache Software Foundation\Tomcat 5.0
CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%CATALINA_H
OME%\common\lib;
Path=C:\oraclexe\app\oracle\product\10.2.0\server\bin;%JAVA_HOME%\bin;%CATALI
NA_HOME%\common\lib;%JAVA_HOME%\jre\bin;%SystemRoot%\system32;%SystemRo
ot%;%SystemRoot%\System32\Wbem
4.MySQL 的安装
直接运行下载的 exe 文件,按照一般的 Windows 程序安装步骤即可安装好,安装时,
它会自动寻找 J2SDK 的位置。安装的时候输入用户名:root,密码:root。并选 utf-8 编
码,否则数据库中不能输入汉字。安装完成之后。还可以安装个 Navicat lite for MySQL
方面于用户图形界面操作。
1.2 Android 概述
1.2.1 Android 的产生
Android 是“机器人”的意思,是 Google 公司于 2007 年 11 月 5 日发布的一个基于
Linux 平台的开源手机操作系统。同日,Google 宣布组建了一个全球性的联盟组织。这
一联盟支持 Google 可能发布的手机操作系统或应用软件,共同开发名为 Android 的开放
源代码的移动系统。该平台由操作系统、中间件、用户界面和应用软件组成,号称是首
个为移动终端打造的真正开放和完整的移动软件。目前,最新版本为 Android 2.4
Gingerbread 和 Android 3.0 Honeycomb。Android 是基于 Linux 内核的操作系统,是 Google
公司在 2007 年 11 月 5 日公布的手机操作系统。
早期由原名为"Android"的公司开发,谷歌在 2005 年收购"Android.Inc"后,继续进
行对 Android 系统开发运营,它采用了软件堆层(software stack,又名软件叠层)的架
构,主要分为三部分。底层 Linux 内核只提供基本功能,其他的应用软件则由各公司自
行开发,部分程序以 Java 编写。
2011 年初数据显示,仅正式上市两年的操作系统 Android 已经超越称霸十年的塞班
系统,使之跃居全球最受欢迎的智能手机平台。现在,Android 系统不但应用于智能手
机,也在平板电脑市场急速扩张。采用 Android 系统主要厂商包括台湾的 HTC,(第一台
谷歌的手机 G1 由 HTC 生产代工)美国摩托罗拉,SE 等,另外还有中国大陆厂商如:华
为、中兴、联想等。
1.2.2 Android 的平台架构
Android 平台采用了整合的策略思想,包括底层 Linux 操作系统、中间层得中间件
和上层的 Java 应用程序。Android 操作系统的体系机构分四层,由上而下依次是应用程
序、应用程序框架、核心类库和 Linux 内核。其中在第三层还包括 Android 应用环境[4]。
Android 以 Java 为编程语言,不同的方向,都有不同的变化,其中 Activity 等同于
J2ME 的 MIDlet,一个 Activity 类(class)负责创建视图(Window),Activity 代表一
个 活 动 , 也 就 是 在 foreground 前 台 视 图 , 后 台 运 行 的 程 序 叫 做 Service 。 由
ServiceConnection 连接 AIDL,使之互通,达到同时运行多个程序的效果。如果运行中
的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至
被系统清除(kill)。
Android 的中间层多以 Java 实现,并且采用特殊的 Dalvik 虚拟机(Dalvik Virtual
Machine)。Dalvik 虚拟机是一种 Java 虚拟机,也是一种虚拟指令相对较少的“暂存器型
态”(Register Based)的 Java 虚拟机。
多个实例(instance)都可以运行在 Dalvik 虚拟机上, 每个 Android 应用程序都和
一个的 Dalvik 虚拟机相互对应,实现一对一的管理,优化程序在系统上的运行。Dalvik
虚拟机运行的是一种.dex 格式的文件,并不像 Java 程序,运行 Java 字节码(Bytecode)。
发布的时候,附带着打包 Android 中一系列核心应用程序包,该应用程序包包括很
多常用的程序,比如联系人管理程序,地图,短信程序等。利用 JAVA 语言来编写 Android
程序。
开发人员可以对核心应用程序所使用的 API 进行完全访问。这种方式可以在重用组
件方面得到简化;任何一个应用程序虽然都要遵循框架的安全性限制,但可以使用其他
程序提供的功能或接口,也可以发布自己的功能或接口。同样,这种方式也让用户替换
程序组件更加便捷。
一系列的服务隐藏在系统和程序的背后, 其中包括:丰富而又可扩展的视图
(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),
按钮(buttons), 甚至可嵌入的 web 浏览器;内容提供器(Content Providers)使得应用程
序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据;资
源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文
件( layout files );通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显
示自定义的提示信息;活动管理器( Activity Manager) 用来管理应用程序生命周期并提
供常用的导航回退功能。
Android 包含一些 C/C++库,这些库能被 Android 系统中不同的组件使用。它们通
过 Android 应用程序框架为开发者提供服务。以下是一些核心库:系统 C 库 - 一个