3 网站设计
3.1 网站总体设计
本网站的设计是采用面向对象和模块化技术。对象是把数据和操作封装起来的程序块。所以,在内部被隐藏的数据和实现操作的代码如有改变,对别的程序对象没有任何影响。面向对象的继承机制同时也解决了对象有相同的功能时的重复问题。另外,因为对象自己操作自己本身的数据,用自己的响应方式去响应同一消息的不同对象,同一消息可以有不同响应方法,这就是多态性。面向对象恰是靠着封装、继承、多态这些特性使程序变得安全、可靠、重用性高、并且易于维护。
所以在面向对象的基础上,根据本网站的设计的各种需求策画出了本网站的总体流程,如图3所示。
查询界面 登录 管理员登录 N 普通用户登录 N 用户名密码是否正确 用户名密码是否正确 Y Y 管理员管理界面 普通用户管理界面 退出网站 结束
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所示。
E-mail 用户 用户名 密码 联系人 电话
图4 用户E-R图
(2) 管理员是不可以直接注册的,管理员的添加必须在数据库中添加。管理员E-R图如图5所示。
管理员 管理员账号 管理员密码
图5 管理员E-R图
(3) 留言信息需要根据用户登录的用户名留言,所以留言表里需要用户名,并且留言表还需要留言主题与内容以及时间。留言表E-R图如图6所示。
5
留言序号 留言 用户名 留言时间 留言主题 留言内容
图6 留言E-R图
(4) 车次信息表,主要是为了存储车次的基本信息,因此每路车都有唯一的车线号,除此之外,还要包括该车次的基本信息,如票价,起始点,终点,早末班车时间。车次信息表E-R图如图7所示。
票价 早末班车时间 车次 车次ID 终点 是否是空调车 起始点
图7 车次E-R图
(5) 站点表,主要包括站点号和站点名。站点表E-R图如图8所示。
站点 站点ID 站点名字
图8 站点E-R图
(6) 车次站点关联表,主要是为了显示车次所经过的站点,因此它包括车次表的车次号和站点表的站点号,以及车次所要经过的顺序。车次站点关联表E-R图如图9所示。
站点名字 站点ID 站点 经过 站点号 车次号 经过序号 票价 6
图9 车次站点关联E-R图
(7)数据整体E-R图如图10所示
管理员密码 管理员号 用户名 密码 联系人 E-mail m 管理员 删除 用户 n 1 添加 维护 站点ID 站点名字 留言 站点 用户名 电话 1 n 留言序号 n n 留言主题 车次号 经过过 站号 留言内容 留言时间 经过号 m 票价 车次 车次ID 早末班车时间 终点 是否是空调车 起始点 图10 数据整体E-R图 3.2.3 数据库表结构
表1用户表user
7
表2管理员表admin
表3留言表message
表4车次表bus
表5站点表station
8