公交查询网站的设计与实现
目 录摘要„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 关键词„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 引言„„„„„„„„„„„„„„„„
目 录
摘要„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 关键词„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 引言„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 1 技术支持及开发环境„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.1 JAVA语言 „„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.2 JSP基础 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.3 JDBC „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.4开发环境„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 2 网站需求分析„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.1 网站调研„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.2 网站目标„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.3 网站功能需求„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.3.1 功能需求描述„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.3.2 功能流程„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
2.3.3 功能模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„3
2.4 网站非功能需求„„„„„„„„„„„„„„„„„„„„„„„„„„„„4 3 网站设计„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 4
3.1 网站总体设计„„„„„„„„„„„„„„„„„„„„„„„„„„„„„4
3.2 网站数据库的总体设计„„„„„„„„„„„„„„„„„„„„„„„„„5
3.2.1 数据库设计„„„„„„„„„„„„„„„„„„„„„„„„„„„„„5
3.2.2 数据E-R 图„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6
3.2.3 数据库表结构„„„„„„„„„„„„„„„„„„„„„„„„„„„„9 4 网站实现„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 9
4.1 查询模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 9
4.1.1车次查询 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 9
4.1.2站点查询 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 9
4.1.3换乘查询 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 11
4.2登录模块 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 11
4.2.1普通用户登录 „„„„„„„„„„„„„„„„„„„„„„„„„„„ 12
4.2.2管理员登录 „„„„„„„„„„„„„„„„„„„„„„„„„„„„ 12
4.3管理模块 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 13
4.3.1 普通用户管理 „„„„„„„„„„„„„„„„„„„„„„„„„„ 13
4.3.2 管理员管理 „„„„„„„„„„„„„„„„„„„„„„„„„„„ 15
5. 网站测试 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 17
5.1 测试概述 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 17 0
,5.1.1 测试目的 „„„„„„„„„„„„„„„„„„„„„„„„„„„„ 17
5.1.2 测试原则 „„„„„„„„„„„„„„„„„„„„„„„„„„„„ 18
5.2 测试用例 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 18
5.3 测试结果 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„18 总结„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„18 致谢„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„19 参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„19
1
,公交查询网站的设计与实现
摘要:公交在城市交通中起着举足轻重的地位,它连接了城市的东西南北,是一个城市的市民出行的重要选择。XX 城市公交已获得了很大发展,交通线路变得越加复杂, 想找到一条便捷的交通线路就变得很困难,为了解决这种问题,提出了公交查询网站。
网站调研首先找出公交查询网站的可行性,进而对网站进行需求分析,包括功能需求和非功能需求;然后介绍了该网站所需功能的总体设计思路以及对功能模块所需要用到的数据库的总体设计;随后按照总体功能的总体思路分模块详细阐述了该网站主要功能的实现过程;并且在最后对该网站进行网站测试,通过对该网站设计的测试方案进行验证该网站是否可以正常运行。本网站中的查询模块包含有线路查询、站点查询、换乘查询;用户个人中心主要实现的功能有修改登录时的验证密码和修改注册时的个人信息;后台管理员模块主要实现功能是线路管理、站点管理、用户管理、留言管理。本网站是采用JSP 技术的基于B/S模式的开发,后台数据库使用Mysql 构建的。并且本网站具有界面友好、操作简单、性能可靠等人性化设计。
关键词:JDBC ;JSP ;公交查询;Mysql
引言城市公交车,主要是连接一个城市的东南西北,是为了方便市民出行的重要交通工具。XX 市经济发展,城市扩张,以及新区的出现,改变了的变化正在改变公交线路。因此,迫切需要通过浏览器查询需要一个方便,快捷路公交车的信息,该网站能够实现中央控制,自动更新和更多的方式来寻找更强大和更。该项目包含了大部分的功能,交通网站,并提供以方便用户在网站上评论功能用户的意见,并提供后台维护交通管理员的用户信息能力培养更新的信息在实时。用户友好访问的实时交通线路。
1 技术支持及开发环境
1.1 JAVA语言
Java 是sun 公司推出的一种面向对象的动态的开发语言。是由“Java 之父”之称的James Goslling 和他的同事共同研发,在1995年正式推车。最初推出之时Java 被称为Oak ,1995年更名为Java ,Java 语言从面试之时就受到广大开发者的追捧,所以Java 的发展速度非常快。卓越的通用性、跨平台性和安全性,使得Java 技术被广泛地应用于智能化设备、数据中心、科学超级计算机、个人pc 和互联网。于其他公司不同,sun 公司在推车Java 的时候就将其作为一种开放的技术公开发者免费使用。java 需要有编译器才能执行,但c 、c 也一样,需要有一定的环境配置才能运行,这不是java 的弱项。相对而言,java 推崇的是一次编译 到处运行,因此基本上不存在平台问题,这让Java 受到了全世界程序开发人员的推崇和喜爱。 1.2 JSP基础
JSP 一种动态技术标准。与asp 一样时代html 里插入程序段和标识来形成.jsp 文件。JSP 是在服务器上运行的,客户端实际操作的就是有服务器传输的HTML 文件,所以客户端并不需要一些特殊的工具,只是借助常用的浏览器就可以查看。现在我们常用的JSP 版本是比较新的JSP1.2,之前还有两个版本,分别是在1999年9月和12月推出的1.0和1.1版本,近年来,随着技术人员要求的天后,新版本的jsp 规范的出台业已展开了热论。
1.3 JDBC
JDBC (Java Data Base Connectivity)是java 数据库连接技术。利用JDBC ,向任何关系型数据库发送SQL 语句将变得很容易。Java 与JDBC 的联合,使得程序员能够只写一次数据库应用软件,然后就可以在各类数据库网站上执行。JAVA 如今成为数据库开发应用的一门极好的语言。如今只需找到一种能使Java 的使用与各类不同数据库对话的方法,而JDBC 恰是达成这类方法的一种机制,因此也可以说JDBC 扩大了Java 的使用范围。
1.4 开发环境
本网站的开发采用JSP 、Json 、Jquery 、JavaScript 、JDBC 等技术。本网站利 1
,用MyEclipse 10作为开发环境,采用JDK 1.7版本,Tomcat 6.0作为Web 服务器。数据库采用Mysql
2 网站需求分析
2.1 网站调研
XX 市现有公交查询网站没有用户互动功能,导致用户的心声无法迅速传到管理员的耳中,管理员无法了解市民的想法以及改进的意见。本网站具有用户留言的功能,市民登录个人中心后就可以给管理员留言,提出自己的意见和建议,使得如此管理员就可以了解群众的需求以及改进的建议,更加具有实时性和人性化。
2.2 网站目标
本网站的设计与实现预定实现如下目标:
(1)友好的界面,人性化的设计使市民可以方便简单得操作网站,及时获取公交信息
(2)简单的操作使管理员实时管理更新公交信息。
(3)提高开发人员编程以及以及思维逻辑能力,并加深对软件工程思想的理解。
2.3 网站功能需求
2.3.1 功能需求描述
普通用户的需求是登录个人中心、发表留言。后台维护人员的需求是登录管理维护中心进行对线路、站点以及用户和留言的管理维护。
开发XX 市公交查询网站时需要满足如下需求:
(1)注册用户和登录用户。
(2)用户个人中心修改密码和个人信息以及发表留言。
(3)管理员的登录。
(4)管理员能够实时更新公交信息。
2.3.2 功能流程

2
,图1 总体思路
如图所示,在查询模块中能够选择进行普通用户或管理员登录。
管理员成功登进网站后,可对车次线路、站点、留言信息等进行管理操作。普通用户成功注册并登进后,可对个人信息进行修改、并且可以进行发布留言等操作。 2.3.3 功能模块

根据图2的模块,分模块详细介绍各个模块所实现的具体功能: 1.公交查询模块
公交查询包括:车次线路查询、站点查询、换乘查询;市民根据所需要求选择查询方法进行查询。
车次线路查询就是根据车号查询该车次所经过的所有站点,以及该车次的基本信息;站点查询就是根据输入的站点查找出所有经过该站点的车次的信息;换乘查询就是分别输入起始站点和目的站点的根据起始站点到达目的站点的公交乘车方案。
2.登录模块
登录模块分为管理员登录和普通用户登录,并且无论是管理员还是普通用户都拥有自己相应的用户名和密码。只有在输入正确的用户名和密码才能成功跳转到相应页面,只要有一项不正确则继续在该页面继续验证登录、
3.用户个人信息管理模块
普通用户成功登录后,进入用户个人信息管理界面,在此界面,用户可以查看历史留言、发布新留言;并且能够修改个人的注册信息以及登录密码。
4.管理员公交维护模块
管理员成功登录后,进入管理员公交维护模块,在此界面,管理员可以查看所有车次、站点、留言以及用户的信息;并且可以添加、删除车次,添加、删除站点,以及删除留言。
2.4 网站非功能需求 1.精度
本网站用户名、密码等需要规定范围。例如下面的规定: (1)用户名:规定为2-10位。比如:“asd ” (2)密码:规定为6-16位。比如“asd123” 2.安全性要求
3
,管理员管理着整个公交网站的维护,为了保护信息的安全,因此管理员账号不可以随便注册,用户使用网站可以任意注册。 3.重复信息
当普通用户注册用户或管理员在新建车次、新建站点时,如果出现同名重复现象,要给与指出,并且不允许更新,要求其修改通过后才可以更新。
3 网站设计
3.1 网站总体设计
本网站的设计是采用面向对象和模块化技术。对象是把数据和操作封装起来的程序块。所以,在内部被隐藏的数据和实现操作的代码如有改变,对别的程序对象没有任何影响。面向对象的继承机制同时也解决了对象有相同的功能时的重复问题。另外,因为对象自己操作自己本身的数据,用自己的响应方式去响应同一消息的不同对象,同一消息可以有不同响应方法,这就是多态性。面向对象恰是靠着封装、继承、多态这些特性使程序变得安全、可靠、重用性高、并且易于维护。
所以在面向对象的基础上,根据本网站的设计的各种需求策画出了本网站的总体流程,如图3所示。

4
,图3 总体流程
3.2 网站数据库的总体设计
3.2.1 数据库设计
信息网站的焦点和基础在于数据库。该数据可以使信息网站可以方便,实时,准确的从数据库中获取所需的内容。数据库是紧密连系信息网站各个部分的重要环节。
本网站数据库表有admin 表、bus 表、busstation 表、message 表、station 表、user 表等共6张表。其中admin 表为管理员表,其中有管理员账号、密码字段;bus 表为车次基本信息表,其中有车辆号、票价、起始点、终点、发车时间等字段;station 表为站点表,保存站点信息,其中有站点号和站点名字段;busstation 表为车次和站点的关联表,存车辆经过的中间站信息,其中有车辆号、站点号、经过次序字段;user 表为用户表,存有注册的用户信息,其中有用户名、密码、联系人、联系电话、联系e-mail 字段;message 表为保存用户发表消息,其中有留言人、留言时间、留言主题、留言内容等字段。
3.2.2 数据E-R 图
(1) 用户注册必须填写用户名和密码,并且可选择的填写联系人、联系电话、联系e-mail 。用户E-R 图如图4所示。
图4 用户E-R 图
(2) 管理员是不可以直接注册的,管理员的添加必须在数据库中添加。管理员E-R 图如图5所示。

图5 管理员E-R 图
(3) 留言信息需要根据用户登录的用户名留言,所以留言表里需要用户名,并且留言表还需要留言主题与内容以及时间。留言表E-R 图如图6所示。

5
,图6 留言E-R 图
(4) 车次信息表,主要是为了存储车次的基本信息,因此每路车都有唯一的车线号,除此之外,还要包括该车次的基本信息,如票价,起始点,终点,早末班车时间。车次信息表E-R 图如图7所示。
图7 车次E-R 图
(5) 站点表,主要包括站点号和站点名。站点表E-R 图如图8所示。
图8 站点E-R 图
(6) 车次站点关联表,主要是为了显示车次所经过的站点,因此它包括车次表的车次号和站点表的站点号,以及车次所要经过的顺序。车次站点关联表E-R 图如图9所示。




图9 车次站点关联E-R 图

(7)数据整体E-R 图如图10所示
3.2.3 数据库表结构
表1用户表user
7
,表2管理员表

admin 表3留言表

message
表4车次表

bus 表5站点表station
8
