公交查询系统的设计与实现.docx

上传人:b****6 文档编号:6051646 上传时间:2023-01-03 格式:DOCX 页数:22 大小:4.88MB
下载 相关 举报
公交查询系统的设计与实现.docx_第1页
第1页 / 共22页
公交查询系统的设计与实现.docx_第2页
第2页 / 共22页
公交查询系统的设计与实现.docx_第3页
第3页 / 共22页
公交查询系统的设计与实现.docx_第4页
第4页 / 共22页
公交查询系统的设计与实现.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

公交查询系统的设计与实现.docx

《公交查询系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《公交查询系统的设计与实现.docx(22页珍藏版)》请在冰豆网上搜索。

公交查询系统的设计与实现.docx

公交查询系统的设计与实现

公交查询系统设计毕业论文

信息工程系

毕业设计(论文)诚信承诺

我谨在此承诺:

本人所写的毕业论文《公交查询系统制作》,系本人独自完成,凡涉及其他作者的观点和材料,均作了注释与说明,若有不实,后果本人承担。

 

承诺人(签名):

2010年6月1日

 

摘要

为推进地名信息服务工作,开发的“南京市公交查询系统”软件(以下简称“本软件”),用于提供快速的、简便的城市公交站点、线路查询服务,也可以用于制作地铁、公路等交通信息查询系统。

本软件的核心是对选择好的车次进行路线的查询,或者输入所要查询的车站名,点击“查询”按钮,查询所有含有该站的车次及相应的停靠站。

此处既可以“精确查询”也可以是“模糊查询”,“模糊查询”主要方便那些对站名不是很清楚,但知道其中的一部分的乘客,系统可以帮助他们快速的查出。

本软件用JSP作为开发语言并结合SQL数据库,只要将公交站点等信息输入数据库,就可以很快构建成一个简单、实用的本地公交查询系统。

关键词:

JSP、SQL数据库、车次管理,公交查询系统。

EnglishAbstract

Topromotethegeographicalnamesinformationservicework,Idevelopedthe"NanjingPublicTransportQuerySystem"(hereinafterreferredtoasthe"Software"),usedtoprovidefast,convenientcitybusstops,inlineinquiryservicecanalsobeusedtomakesubway ,highwayandothertransportationinformationinquirysystem. Thecoreofthissoftwareisagoodchoiceoftripstoroutesofinquiry,orenterthestationnametothequery,clickthe"Search"button,checkallthetripswiththestationandthecorrespondingstops. Hereboth"Exact"canbe"fuzzyquery,""Fuzzyquery,"themainbenefitofthoseonthestationwerenotclear,butthatonepartofthepassenger,thesystemcanhelpthemquicklyfindout. ThissoftwareisdevelopedusingJSPasalanguageandSQLdatabaseintegration,aslongasthebusstopsandotherinformationenteredintothedatabase,youcanquicklybuildintoasimple,practicalsystemoflocalpublictransportinquiry。

Keywords:

JSP,SQLdatabases,sellmanagement,transitsystem.

 

目  录

1绪论5

1.1 研发的背景5

1.2 可行性分析6

2 需求分析6

2.1 用户功能需求分析6

2.1.1 所有乘客可以使用该系统进行车次及路线的查询。

7

2.1.2 本系统应具有简单易用功能强大特点,有较强的纠错能力(随着软件的版本升级功能和纠错能力也可以不断得到提高)。

如果在网络上运行,应有数据在线更新的能力以及在线查询的能力。

由于毕业设计时间有限,本系统没有设计成网络运行版的,在以后的时间会进一步完善该系统。

7

2.1.3由于车次经常会变化所以需要一个管理员身份去管理这个公交查询系统方便更改车次的信息以及车辆的出行线路。

7

2.2 系统功能分析7

3 系统总体结构设计7

3.1 模块结构设计7

3.2 数据库设计7

4 系统详细设计8

4.1 代码设计8

4.2 人机界面设计8

4.3 本系统的界面和源代码10

4.3.1管理员登陆成功界面10

4.3.2公交信息修改界面13

4.3.3公交查询信息界面14

4.3.4公交职员管理界面16

5 系统难点分析19

6结论20

7致谢20

8参考文献21

 

1绪论

随着我国经济的高速发展,人们生活水平的提高,越来越多的人开始热衷于到外地旅游。

那么对于这些外来旅游者,首先搞清这个城市的公交路线显的很重要!

南京,作为一个六朝古都,每年都要吸引大量的游客,为了方便广大游客,我的毕业设计就以公交查询系统做为设计课题。

我认为这样的系统应该具有很好的实用性!

乘客只需选择车次或输入要查询的站点,系统会快速的给出结果,同时管理员也可以很容易的修改车次。

正是基于这样的目的我开发了公交查询系统。

下面就根据软件工程理论的规范要求对软件的开发背景、意义、需求分析等方面进行分析:

1.1 研发的背景

城市规模的逐步扩大,也使整个城市的交通干道越来越复杂,在这种情况下,公交查询系统显的非常的方便和高效,在这个背景下我开发了公交查询系统。

本系统的开发有很大的社会意义,能给广大市民提供极大的方便。

1.2 可行性分析

可行性分析是对系统进行全面、概要的分析。

它的任务是确定项目开发时是否必要和可行。

它的主要目标是:

进一步明确系统的目标、规模和功能,对系统开发背景、必要性和意义进行调查分析,并且提出系统的逻辑模型和各种可能的方案,从而为系统开发项目的决策提供科学依据。

主要从三个方面进行研究:

(1)技术可行性:

以现有技术进行系统开发及系统实施,是完全可行的。

首先,从自身来分析,经过2年多的学习已经初步掌握了JSP控件、SQL数据库等方面的编程技巧,对该软件的设计并不存在技术上的难点。

第二方面,在设计这个系统之前,我进行了一系列先期调研,查阅了有关使用JSP进行数据库开发方面的论著、教材和论文,更多是利用网络的便利条件,从网上查阅了北京、上海、广州、昆明等大型城市的公交查询系统,并认真地对其进行了分析研究,由于时间紧,任务重,我没有更多的时间来开发完整的系统,所以就以查询作为这个系统的核心。

其次,从数据库方面来分析,也是可行的。

系统所建立的数据库表中包含有五个字段:

bus_number,bus_station1,bus_station2,bus_station3,bus_station4。

bus_number用来存放车次,bus_station1,bus_station2,bus_station3,bus_station4这四个字段用来存放站点。

(2)经济可行性:

从这方面来说,本系统的开发作为课题来说不需要什么经济投入,因此来说也是可行的。

(3)营运可行性:

国内很早就开始应用公交查询系统,我国大部分城市都有公交查询系统。

那么从这方面来说是可行的。

2 需求分析

随着我国经济的高速发展,人们生活水平的提高,越来越多的人开始热衷于到外地旅游。

那么对于这些外来旅游者,首先搞清这个城市的公交路线显的很重要!

南京,作为一个六朝古都,每年都要吸引大量的游客,为了满足这些游客熟悉公交路线的需求,特以公交查询系统为设计课题。

本软件不仅能给游客带来方便,也能给广大市民提供方便。

我认为这样的系统应该具有很好的实用性!

开发本系统的目标就是立足广大乘客的实际,着眼于公交业的未来发展,规范公交管理,提高服务质量,方便乘客查询,并为此设计该系统。

2.1 用户功能需求分析

2.1.1 所有乘客可以使用该系统进行车次及路线的查询。

2.1.2 本系统应具有简单易用功能强大特点,有较强的纠错能力(随着软件的版本升级功能和纠错能力也可以不断得到提高)。

如果在网络上运行,应有数据在线更新的能力以及在线查询的能力。

由于毕业设计时间有限,本系统没有设计成网络运行版的,在以后的时间会进一步完善该系统。

2.1.3由于车次经常会变化所以需要一个管理员身份去管理这个公交查询系统方便更改车次的信息以及车辆的出行线路。

2.2 系统功能分析

本系统提供了的车次查询功能、路线查询功能。

乘客可以方便的进行查询,以防乘错车次。

同时管理员身份方便管理车辆的车次和出行线路。

当然有些功能的智能化不是很强,系统有待进一步来完善。

也希望老师及朋友给予指导,提出您们的建议!

在此,先向您们表示感谢!

3 系统总体结构设计

本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合理的划分成各个功能模块,正确地处理模块之间和模块内部的联系以及和数据库的联系,定义各模块的内部结构,通过对模块的设计和模块之间关系的系统来实现整个系统的功能

3.1 模块结构设计

本系统共分两个模块:

(1)车次查询模块:

车次查询模块主要实现选择好车次后,得到相应车次的路线的功能;

(2)路线查询模块:

路线查询模块中,既可以进行精确查询,也可以进行模糊查询,当乘客不知道确切的站名时,只要输入其中的一个或多个字就可以进行查询。

3.2 数据库设计

本系统的数据库设计,采用了SQL进行数据库设计。

通过对市场的调查,建立一个bus数据库已能满足要求,本数据库中的bus表中,建立了五个字段:

bus_number,bus_station1,bus_station2,bus_station3,bus_station4。

结构

如下:

表中bus_number用来保存车次,数据类型定义为数字;bus_station1,bus_station2,bus_station3,bus_station4用来保存站点,类型定义为文本,但对于文本属性来说每个字段的最大长度为255,超过这个长度系统不予显示,因此设四个字段来控制,便于以后数据的扩充。

这里如果用一个字段来放站点,当向字段录入数据时,系统不会提示数据已满,但程序执行后,显示“数据源被截断”,而用四个字段来放站点,只要每个字段录入数据不超过规定的最大值就避免了以上错误的发生。

数据库结构如何设计无疑在整个系统设计中占有重要的地位,所以我们在开发一个系统之前,一定要考虑好数据库该怎么设计,怎么样设计方便接口实现和界面显示。

当然也可以采用另外的组织方式,只要满足一定的规则,符合条件并且有利于编程的实现,都可以采用。

4 系统详细设计

4.1 代码设计

采用dreamweaver工具开发客户端用户体验,制作JSP网页然后使用Tomcat作为服务器连接SQL数据库

4.2 人机界面设计

、ImportsSystem.Data.SqlClient

ImportsSystem.IO

PublicClassLogin

PrivatesqlobjectAsSQL_Conn

PrivatecmdstrAsString

PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click

Me.Close()

EndSub

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click

cmdstr="select*from[user]where[user_id]='"+TextBox1.Text+"'and[pwd]='"+TextBox2.Text+"'and[style]='"+ComboBox1.Text+"'"

Try

Ifsqlobject.Is_SQL_Cmd(cmdstr)Then

main.m_Login=True

main.m_style=ComboBox1.Text

main.main_Load(sender,e)

 

zhiyuanguanli.userid=TextBox1.Text

MsgBox(ComboBox1.Text+"成功登陆")

main.ToolStripStatusLabel1.Text="就绪"

Me.Close()

Else

MsgBox("请填写正确的用户名、密码和用户类型!

")

EndIf

CatchexAsException

main.OPErr.WriteErr(ex)

EndTry

EndSub

PrivateSubLogin_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

ComboBox1.SelectedIndex=0

sqlobject=NewSQL_Conn

Me.MdiParent=main

EndSub

EndClass

4.3 本系统的界面和源代码

4.3.1管理员登陆成功界面

ImportsSystem.Windows.Forms

PublicClassmain

Publicm_LoginAsBoolean=False

Publicm_styleAsString

PublicOPErrAsNewOutputErr

PrivatesqlobjectAsSQL_Conn

PrivateCmdStrAsString

 

PublicSubmain_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

Ifm_Login=FalseThen

Me.公交信息ToolStripMenuItem.Enabled=False

Me.条件查询ToolStripMenuItem.Enabled=False

Me.职员管理ToolStripMenuItem.Enabled=False

Me.登录ToolStripMenuItem.Enabled=True

Me.注销ToolStripMenuItem.Enabled=False

Me.ToolStripButton6.Enabled=True

Me.ToolStripButton7.Enabled=False

Me.ToolStripButton1.Enabled=False

Me.ToolStripButton5.Enabled=False

Me.ToolStripButton8.Enabled=False

login.MdiParent=Me

login.Show()

Else

Me.公交信息ToolStripMenuItem.Enabled=True

Me.条件查询ToolStripMenuItem.Enabled=True

Me.登录ToolStripMenuItem.Enabled=False

Me.注销ToolStripMenuItem.Enabled=True

Me.ToolStripButton6.Enabled=False

Me.ToolStripButton7.Enabled=True

Me.ToolStripButton1.Enabled=True

 

Me.ToolStripButton5.Enabled=True

Me.ToolStripButton8.Enabled=True

Ifm_style="管理员"Then

Me.公交信息ToolStripMenuItem.Enabled=True

Me.条件查询ToolStripMenuItem.Enabled=True

Me.职员管理ToolStripMenuItem.Enabled=True

ElseIfm_style="职员"Then

Me.公交信息ToolStripMenuItem.Enabled=True

Me.条件查询ToolStripMenuItem.Enabled=True

Me.职员管理ToolStripMenuItem.Enabled=False

EndIf

EndIf

EndSub

PrivateSub退出ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles退出ToolStripMenuItem.Click

Me.Close()

EndSub

PrivateSub注销ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles注销ToolStripMenuItem.Click

Me.m_style=""

Me.m_Login=False

ForEachChildFormAsFormInMe.MdiChildren

ChildForm.Close()

Next

main_Load(sender,e)

Login.Show()

Me.ToolStripStatusLabel1.Text="登录"

EndSub

PrivateSubToolStripButton7_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesToolStripButton7.Click

Me.m_style=""

Me.m_Login=False

ForEachChildFormAsFormInMe.MdiChildren

ChildForm.Close()

Next

main_Load(sender,e)

Login.Show()

Me.ToolStripStatusLabel1.Text="登录"

EndSub

PrivateSub登录ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles登录ToolStripMenuItem.Click

Login.Show()

EndSub

PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick

Label1.Text=Now

EndSub

PrivateSubToolStripButton6_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesToolStripButton6.Click

Login.Show()

EndSub

PrivateSub添加ToolStripMenuItem1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles添加ToolStripMenuItem1.Click

gongjiaoxinxixiugai.MdiParent=Me

gongjiaoxinxixiugai.Show()

EndSub

PrivateSub查询ToolStripMenuItem1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles查询ToolStripMenuItem1.Click

gongjiaoxinxichakan.MdiParent=Me

gongjiaoxinxichakan.Show()

EndSub

PrivateSub预定查询ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles预定查询ToolStripMenuItem.Click

shoumozhanchaxun.MdiParent=Me

shoumozhanchaxun.Show()

EndSub

PrivateSub添加职员ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handles添加职员ToolStripMenuItem.Click

zhiyuanguanli.MdiParent=Me

zhiyuanguanli.Show()

EndSub

 

PrivateSubToolStripButton5_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesToolStripButton5.Click

gongjiaoxinxichakan.MdiParent=Me

gongjiaoxinxichakan.Show()

EndSub

PrivateSubToolStripButton8_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesToolStripButton8.Click

shoumozhanchaxun.MdiParent=Me

shoumozhanchaxun.Show()

EndSub

PrivateSub使用方法ToolStripMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

MsgBox("点击相应的图标选择需要的功能,选择菜单、客户等内容时,直接点击数据表")

EndSub

PrivateSubToolStripButton1_Click(ByValsenderAsSystem.O

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 专升本

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1