火车票网上订票系统.docx
《火车票网上订票系统.docx》由会员分享,可在线阅读,更多相关《火车票网上订票系统.docx(48页珍藏版)》请在冰豆网上搜索。
![火车票网上订票系统.docx](https://file1.bdocx.com/fileroot1/2023-3/1/8a43ff4f-c7ca-4d09-a2e1-09887406206d/8a43ff4f-c7ca-4d09-a2e1-09887406206d1.gif)
火车票网上订票系统
毕业设计报告(论文)诚信承诺
本人承诺所呈交的毕业设计报告(论文)及取得的成果是在导师指导下完成,引用他人成果的部分均已列出参考文献。
如论文设计任何知识产权纠纷,本人将承担一切责任。
学生签名:
日期:
火车票网上订票系统
摘要
传统的依靠手工操作的火车站售票工作存在如下两方面问题,一是面临出行高峰时,已有的售票工作人员很难以及时满足旅客的订购需求,服务水平降低;二是难以方便记录、存贮、检索和分析相关订票信息,支持相关的管理和决策。
可见选择火车站网上订票系统的开发是有意义的。
论文简单介绍了网上订票系统的发展,简要论述了网上订票系统的经济、技术和操作方面的可行性。
结合调研和相关资料分析,确定了火车站网上订票系统的功能需求;分析了系统的数据需求、性能需求,确定了系统的数据流程图。
论文还完成了系统的软件结构、系统流程、系统接口和相关程序流程的设计;结合实体-联系分析,完成了系统的数据库逻辑结构设计。
应用JAVA和SQLServer2000数据库实现了所设计的火车站网上订票系统,实现的系统实现了需求分析中所确定的查询、订票、退票等多方面功能,能满足火车站网上订票的基本要求。
论文还介绍了系统的测试与维护,给出了部分典型功能的源代码,如查询、订票、退票、增加车次及修改密码等。
关键词:
信息管理订票JAVASQLServer2000
TrainTicketOnlineBookingSystem
Abstract
Relyontraditionalmanualworkstationtickettherearetwoissues,foronething,whenfacedwiththepeaktravel,ticketingstaffhavebeenverydifficult,andwhentheordertomeetpassengerdemand,servicelevelreduction;foranother,thisisdifficulttoeasilyrecord,store,retrievalandanalysisofrelevantbookinginformationinsupportofrelevantmanagementanddecision-making.Selectstationcanseethedevelopmentofonlinebookingsystemmakessense.
Paperbrieflydescribesthedevelopmentofonlinebookingsystem,onlinebookingsystembrieflydiscussestheeconomic,technicalandoperationalfeasibility.Combinedwiththeresearchandstatisticalanalysistodeterminethestationon-linebookingsystemfunctionalrequirements;ofthesystemdatarequirements,performancerequirements,determinethesystem'sdataflowdiagram.Thepaperalsocompletedasystemsoftwarearchitecture,systemprocesses,systeminterfacedesignprocessandrelatedprocedures;combinedentity-relationshipanalysis,thecompletionofthelogicalstructureofthedatabasesystemdesign.ApplicationofJAVAandSQLServer2000databasedesignedtoachieveatrainstationon-linebookingsystem,implementedtoachievethesystemrequirementanalysisidentifiedintheinquiry,booking,refundsandothervariousfunctionstomeetthebasicstationonlinebookingrequirements.
Paperalsointroducesthesystemoftestingandmaintenance,giventhesourcecodeofsometypicalfunction,suchasinquiries,booking,arefund,increasevehicletripsandmodifythepassword.
Keywords:
InformationManagement;Booking-ticket;JAVA;SQLServer2000
第一章概述
1.1课题背景
在现代社会中管理的作用越来越重要和突出。
管理通过计划、组织、指导与领导、控制等手段,为组织制定目标,应用组织的各种要素,一实现组织的目标。
对企业来说,人们按照一定的生产关系组织起来,对生产力、生产对象、生产手段等加以计划、指导、监控和协调,以达到预期的目的,成为企业管理。
传统的企业管理活动中,把人、财、物作为企业的主要资源。
但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营及企业管理中的作用,并把它作为企业的一种及其重要的资源,称之为”信息资源”,信息资源的处理已经成为当今世界上一项主要的社会活动。
本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交互的深度和广度不断增加,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需求;电子计算机的诞生和在信息处理中的应用,标志着一个崭新时代--“信息时代”的开始,它使企业管理现代化成为可能。
管理信息系统从产生到现在已经经历了单项数据处理阶段、综合数据处理阶段、现代管理信息系统(MIS)阶段等几个阶段。
但是在我国,由于各种原因,管理信息系统的发展尚处于初级阶段。
尽管如何,充分利用我们现有的资源和技术力量,开发一些合适的管理信息系统,是非常必要的。
1.1.1问题提出
随着社会的不断发展,外出旅游、出差办事的人越来越多,而大多数人选择火车作为交通工具,因为火车不仅速度快,而且价格便宜又安全。
传统的火车站售票工作主要依靠手工操作完成,面临如下两方面问题。
一是,当面临出行高峰时(如春节、国庆长假等重要节日),已有的售票工作人员很难以及时满足旅客的订购需求,旅客购票困难,需要排队等候更长时间,服务水平降低。
二是,手工方式难以方便记录、存贮、检索相关订票信息,也难实现对大量已有信息进行分析,支持企业决策。
因此,传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式—网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务。
然而开发一个火车站网上订票系统,不仅可以降低工作人员的工作量,而且提高工作人员的工作效率,同时方便顾客订票。
1.1.2研究意义
火车站市场的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,订票是客运业务中的一个最基本的业务,表面上看,它只是火车站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面,因此,过去传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式——网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务。
本次设计便是利用开发工具MyEclipse和SQLServer2000数据库共同开发的一个火车站网上订票系统,它能方便快捷地运用在火车站订票业务的营运之中。
1.2网上售票系统的发展
因特网技术的飞速发展为铁路带来了全新的售票方式。
1994年10月,美国联合铁路公司率先推出了网上售票系统,乘客只须在网上输入自己的信用卡号和有效期,就可以直接购买车票。
出票方式有电子车票、车站取票、送票上门等多种方式。
网上订票给旅客带来了方便。
购票者足不出户就可在电脑上查询火车动态、票价和车票的可售情况,并直接订购车票,免去了奔波之苦。
网上订票还扩充了铁路公司的销售网点。
截至1997年9月底,世界上排名前20位的铁路公司都有了自己的网上售票系统。
网上订票的优越性使国内越来越多的铁路公司着手研制自己的网上订票系统。
1999年9月,中国羊城铁路公司的网上订票系统正式启动,只要进入羊城铁路公司的网上订座页面就可以自己订购车票了,票款的支付方式为网上支付和现金支付。
1.3论文的主要内容
论文的主要内容是,分析网上火车订票系统的功能要求和结构要求,开发出具有查询、订票、退票等多方面功能,能满足火车站网上订票基本要求的系统。
论文主体包括七章,各章内容如下。
第一章概述。
分析介绍了网上火车订票系统的背景与意义、网上订票系统的发展,介绍了论文的主要内容。
第二章系统的可行性研究与需求分析。
从经济、技术和操作方面等方面论证了系统开发的可行性;分析了系统的功能需求、数据需求和性能需求,确定了系统的数据流程图和数据字典。
第三章系统的设计。
介绍了系统的软件结构、系统流程、系统接口和相关程序流程的设计;结合实体-联系分析,完成了系统的数据库逻辑结构设计,从而使系统更加容易实现。
第四章系统的实现。
分析介绍了应用系统的开发,给出了部分典型功能的源代码。
第五章测试与维护。
分析介绍了测试的目的、测试的方法,确定了测试计划,从而使系统更加稳定。
还介绍了系统将来的维护。
第六章系统回顾与展望。
通过整个系统设计后,总结了设计过程,还对本系统给予了很高的展望。
第二章系统的可行性研究与需求分析
2.1可行性研究
该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。
我们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。
2.1.1经济可行性
开发该系统所需的相关资料可以通过已存在的网上订票系统进行调查采集,所需的其他应用软件、硬件系统也易于获得.因此,开发成本较低。
而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。
所以,从经济的角度来看,该系统可行。
2.1.2技术可行性
开发工具:
MyEclipse
开发语言:
JAVA,JSP
结构体系:
B/S
开发框架:
MVC
数据库环境:
SQLServer2000
系统环境:
MicrosoftWindows2000或以上版本。
系统实现依靠相对熟悉的JSP,JAVA语言和SQLServer2000数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作,暂不存在技术问题。
1.MyEclipse的介绍
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
2.JAVA语言的介绍
Java语言是一中跨平台、适合于分布式计算环境的面向对象编程语言。
它具有的特点很多,如简单性、面向对象、分布式、解释型、可靠性、安全性、平台无关性等[6]。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。
另一方面,Java技术也不断更新。
Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。
在Java技术中,值得关注的还有JavaBeans,它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言。
一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念。
一个JavaBean的主要特征包括属性、方法和事件。
Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。
Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
3.JSP的介绍
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
4.B/S结构体系
B/S即浏览器/服务器(Browser/Server)也是一种Client/Sewer结构,它是一种由传统的两层Client/Server结构发展而来的三层Client/Server结构在Web上的应用的特例。
在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。
Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户机端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
在B/S三层体系结构下,表示层(Presentation)、功能层(Business)、数据层(DataService)被割成三个相对独立的单元:
第一层是表示层,即Web浏览器。
在表示层中包含系统的显示逻辑,位于客户端。
它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。
第二层是功能层,即具有应用程序扩展功能的Web服务器。
在功能层中包含系统的事务处理逻辑,位于Web服务器端。
它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。
第三层是数据层,即数据服务器。
在数据层中包含系统的数据处理逻辑,位于数据库服务器端,它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。
数据层是数据的存放地。
数据层使用一个关系型数据库(如SQLServer)来实现数据的存储,并集中管理这些数据,实现数据的完整性、安全性和灾难防护。
三层B/S体系结构的网络结果图:
图2-1三层B/S体系结构图
B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。
只要有一台能上网的电脑就能使用,客户端零维护。
系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码就可以使用。
5.MVC设计模式的结构
MVC是XeroxPARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式。
MVC的核心是实现三层甚至多层的松散耦合,它将一个应用系统分为三个组件:
模型Model---视图View---控制器 Controller[7]。
1)模型层(Model):
模型指的是真正完成任务的代码,包含应用系统的核心功能,表示一个应用系统的数据,并且包含访问、维护和管理这些数据的逻辑。
所有属于应用系统持久状态的数据都应该保存在模型对象中。
模型提供的服务必须足够适用于不同的终端。
一个模型聚集了相关的数据和操作,以提供一个详细而精确的服务:
这些被封装在操作中的抽象事物的功能被模型化。
2)View:
视图表示模型的状态,是应用系统的外观,当模型发生改变时,视图也将随之改变,以维持系统数据的一致性。
在MVC模式下,通常的设计前提是界面任务较小。
当然视图也应该具有一定的功能性并遵守可用性的约束,但视图界面不应当处理数据。
事实上,视图的每一部分都只能包含采集数据的逻辑,并把采集到的数据传递给设计模式中的其他组成部分进行处理。
3)Controller:
控制器是联系模型与视图之间的纽带,控制模型和视图之间的交互过程。
它获取并翻译用户输入的动作,指定执行该动作的模型,或者根据用户的输入和执行的结果来选择下一个视图。
MVC设计模式是一种用于分离数据维护和数据表现的方法,在J2EE中引入MVC设计模式,有助于把应用划分为合理的组件,从而可以方便的进行系统的开发、维护和扩充。
随着J2EE各种组件技术的广泛应用和MVC设计模式的发展与完善,J2EE与MVC设计模式在Web应用系统开发领域达到了完美的结合。
目前,这种结合己经被广泛的应用于许多企业级Web应用系统的开发过程中,根据用户动作和模型处理的结果,控制器选择一个视图作为用户请求的响应。
清晰的MVC设计模式,简化了Web应用系统的开发。
2.1.3操作可行性
系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。
用户只需对订票流程和业务调查了解即可,不需掌握数据库等相关知识。
2.2需求分析
软件开发过程的第一个重要环节就是获取需求。
在开发本系统之前,首先需要弄清楚整个系统的需求,并采用适当的工具辅助描述需求。
本阶段对订票系统的应用情况作全面调查,以确定系统目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。
一个完整的火车票订票系统面向的对象至少应该有管理员、用户等,提供的服务也应该是多种多样的。
本系统开发了一个面向管理员和用户的平台[3]:
对拥护提供的服务有注册、登陆、查询、订票、退票、密码修改;对管理员提供的有登陆、添加车次、修改密码。
因此,本系统分为用户和管理员两个模块。
管理员和用户对系统的需求我们从以下几方面进行分析。
2.2.1功能需求
1.查询
用户、管理员和游客都可以对车次进行查询,可以按照发车车次进行查询;可以按照出发地、目的地进行查询;也可以按照列车类型、座位类型查询;
车次信息包括:
车次ID、车号、出发地、目的地、列车类型、座位类型、票价、票数,车次信息只允许用户查询,不能修改。
2.订票
用户登陆后,通过订票系统,根据自己的需求找到满意的车次,输入要退的票数进行订票。
要求:
订票记录应包括:
订票记录ID、车次ID、用户ID、订票数量。
3.退票
用户登陆后,通过退票系统,用户找到自己的订票信息,输入要退的票数进行退票。
4.注册
要想订票的游客,必须先注册,然后登陆,就可以订票了。
要求:
用户信息包括:
用户ID、用户名、密码、角色。
5.登陆
主要完成用户和管理员登录的功能,如果注册用户想要订购火车票,就必须登录。
登录时必须正确添写用户名和密码。
如果游客没有注册。
登录界面有到注册界面的连接。
6.修改密码
用户和管理员登录后,可以修改自己的密码。
7.添加车次
管理员登录后,可以添加新的车次。
2.2.2数据需求
信息需求,即在系统中需要处理哪些数据。
根据对火车站网上订票系统的分析,本系统的信息需求如表2.1所示。
表2.1信息输入输出
信息输入
信息处理
信息输出
用户输入所需车次
检索系统数据库
符合用户需求的车次及相关
信息
用户和管理员输入用户名、密码进行登陆
检索系统数据库
成功登陆后的首页
用户输入个人信息进行注册
将新信息存入系统数据库
操作反馈(如注册成功等)
用户输入自己的想要订票的数量
检索系统数据库以得到订票
记录,添加用户请求的订票
记录,更新系统数据库
操作反馈(如订票成功等)
用户输入自己的想要退票的数量
检索系统数据库以得到订票
记录,删除用户请求的订票
记录,更新系统数据库
操作反馈(如退票成功等)
用户和管理员输入新密码
更新系统数据库
操作反馈(如密码修改成功等)
管理员输入添加车次信息
将新信息存入系统数据库
操作反馈(如添加成功等)
2.2.3性能需求
为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。
1.准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
系统应能及时而且准确的根据用户权限及所输入的信息做出响应。
由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。
作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。
在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。
2.易用性
本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。
3.安全性
网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。
同时系统还要保证对数据库进行及时更新,保证数据一致性。
2.2.4数据流图
图2-1顶层数据流图
图2-2总数据流图
2.2.5数据字典
表2.2车次信息数据字典
表2.3订票信息数据字典
表2.4用户信息数据字典
名字:
用户信息
别名:
描述:
存放用户信息的文件,以供用户方便的查询订单信息和订票,进而做出相应的操作
定义:
用户信息=用户ID+用户名+密码+角色
位置:
输出到CRT终端或类似的显示部件
2.2.6用例图
用例图(UserCase)是被称为参与者的外部用户所能观察到的系统功能的