摘要:
随着Internet的快速发展,互联网已成为人们快速获取、发布和传递信息的重要渠道,显然它已成为社会生活的一部分。但我国的城市公交信息查询却还处于比较落后的水平上,广大的市民获取路线信息方式也比较少,最常用的方式只局限在询问和交通地图上。而城市公交查询系统就是使人们能够在因特网上方便、简单的查询出各条路线,了解自己所经过的每个站点等信息,以便能更好的制定自己的行动计划而设计的。它主要实现的模块是公交信息的查询模块,其中包括的功能有:线路查询、站点查询、站站查询、车站查询;而系统管理模块主要实现的是对各个数据表进行添加、编辑、删除等功能操作以及对留言版进行一些相应的回复。城市公交查询系统开发技术采用的是基于.NET的B/S架构,它的前端选用ASP.NET为主要的编程框架,其.ASPX文件包含组成用户界面的 HTML 文本和控件,而后台选用了C#编程语言。用.NET编程的最大好处在于易于管理和重用性比较高。数据库选用的是SQL Server 2000,而应用程序通过ADO.NET与SQL Server 2000数据库建立链接,并且运用SQL 语言实现对其数据库进行操作。在此系统中,大量采用了存储过程来对数据库进行操作。

3.2.1 系统功能描述
在用户进入主界面后,就可以通过车次查询、站点查询、站站查询、车站查询快速地查询出符合用户条件的相关线路信息。用户还可以在留言簿中直接进行留言,留言内容可以是对线路的询问,也可以对系统的不足地方提出用户自己的见解。当管理员进入系统后,可以对数据库中的信息进行添加、删除和编辑等操作。他还负责管理用户的留言信息,通过对留言信息的审核,然后来判断对留言信息是进行回复还是删除操作。
3.2.2 系统功能模块划分
在了解了系统的功能需求后,可以把该系统划分为以下3个模块:用户查询模块、留言簿模块和系统管理模块如图3-1。

在用户查询模块中,主要是查询出用户自己所需要的线路信息,这也是整个系统最主要的功能模块。主要包括:(1)查询车次信息:输入要查询的车次进行搜索,可以查询出于它相应的站点名和站点描述信息。(2)查询站点信息:输入要查询的站点进行搜索,可以查询出于它相应的车次名、发车时间、收车时间和车次描述信息。如果用户不知道站点的全称,也可以在高级查询中模糊查询出含有关键字的所有站点信息。(3)查询车站信息:选择要查询的车站进行搜索,可以查询出于它相应的车次名、发车时间、收车时间和车次描述信息(4)查询站站信息:输入要查询的起始站和终点站进行搜索,可以查询出于它相应的乘车路线。在系统管理模块中,主要是对数据库中的各个表进行管理。主要包括:(2)留言簿管理:可以对留言簿中的内容进行回复与删除操作。在留言簿管理中,它还含有一个搜索引擎,主要功能是管理员可以通过它搜索想要查询的留言主题,这样可以快速的找出某一主题并对它进行回复或删除等操作。(3)站点、车次管理:可以对站点、车次基本信息和车次次序信息进行添加、删除和编辑等操作。而且它们各自都含有一个搜索引擎,这样可以快速的查询出你想要修改的站点或车次等信息,此搜索引擎采用的是模糊查找。在留言簿模块中,用户可以不需要注册直接在网上进行留言,也可以对某一特定地留言标题进行回复货讨论,也可以通过留言簿查看自己曾经留言过的信息。
3.2.3 系统流程设计
在城市公交查询系统中,其核心内容就是公交查询的实现。在此系统中,即实现用户查询模块中的各个功能信息。其中包括车次查询、站点查询、站站查询和车站查询功能。此系统中,用户不需要注册就可以直接进行相关功能的查询。其中站站查询是此系统中最重要的功能。主要流程为:当程序开始时先进入正向搜索,如果正向搜索不存在所需的数据再进行反向搜索,如果正反两方都没有搜索到所需的数据则程序结束。流程如图3-2所示。

根据上图所示,在站站查询实现的过程中,它是从正反两个方面对线路进行查询。其中正向搜索线路的流程如图3-3所示。

3.2.4 系统E-R图
针对城市公交查询系统的需求,设计如下面所示的数据项和数据结构:(1)管理员基本信息(如图3-4):包括管理员ID,管理员名,管理员秘码。(2)留言簿基本信息(如图3-5):包括留言簿ID,留言标题,留言者,留言内容。(3)车次基本信息(如图3-6):包括车次ID,车次名,发车时间,收车时间,车次描述。(4)站点基本信息(如图3-7):包括站点ID,站点名,站点描述。(5)站点次序信息(如图3-8):包括站点次序ID,站点名,车次名,站点次序。





在了解了各实体之后,下面实现的是站点次序表、站点表、车次表之间的E-R关系模型图。站点次序表与站点表之间的关系是一对多的关系,记作1:M,站点次序表与车次表之间的关系也是一对多的关系,记作1:N,如图3-9所示。

城市公交查询系统应用的是SQL Server 2000数据库管理系统。此系统使用的数据库名称为mybus,下面具体讲解数据库中各数据表的创建。
4.1 数据表的创建(部分表展示)
该系统中共需要创建五个数据表:管理员表、留言簿表、车次基本信息表、站点基本信息表、站点次序表。此表包括三个字段:一个是管理员标志adminid字段,该字段时admin表的主键;另外两个分别是管理员名和管理员密码。其详细信息如表4-1所示。
此表包括四个字段:其中infoID字段为info表的主键,另外三个分别为留言标题、留言者名、留言内容。其详细信息如表4-2所示。
此表包括五个字段:其中lineid字段为line表的主键,另外四个分别为车次名、发车时间、收车时间和车次描述。其详细信息如表4-3所示。


