基于web购票系统的设计与实现.docx

上传人:b****8 文档编号:12868215 上传时间:2023-06-08 格式:DOCX 页数:24 大小:514.08KB
下载 相关 举报
基于web购票系统的设计与实现.docx_第1页
第1页 / 共24页
基于web购票系统的设计与实现.docx_第2页
第2页 / 共24页
基于web购票系统的设计与实现.docx_第3页
第3页 / 共24页
基于web购票系统的设计与实现.docx_第4页
第4页 / 共24页
基于web购票系统的设计与实现.docx_第5页
第5页 / 共24页
基于web购票系统的设计与实现.docx_第6页
第6页 / 共24页
基于web购票系统的设计与实现.docx_第7页
第7页 / 共24页
基于web购票系统的设计与实现.docx_第8页
第8页 / 共24页
基于web购票系统的设计与实现.docx_第9页
第9页 / 共24页
基于web购票系统的设计与实现.docx_第10页
第10页 / 共24页
基于web购票系统的设计与实现.docx_第11页
第11页 / 共24页
基于web购票系统的设计与实现.docx_第12页
第12页 / 共24页
基于web购票系统的设计与实现.docx_第13页
第13页 / 共24页
基于web购票系统的设计与实现.docx_第14页
第14页 / 共24页
基于web购票系统的设计与实现.docx_第15页
第15页 / 共24页
基于web购票系统的设计与实现.docx_第16页
第16页 / 共24页
基于web购票系统的设计与实现.docx_第17页
第17页 / 共24页
基于web购票系统的设计与实现.docx_第18页
第18页 / 共24页
基于web购票系统的设计与实现.docx_第19页
第19页 / 共24页
基于web购票系统的设计与实现.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于web购票系统的设计与实现.docx

《基于web购票系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于web购票系统的设计与实现.docx(24页珍藏版)》请在冰点文库上搜索。

基于web购票系统的设计与实现.docx

基于web购票系统的设计与实现

 

毕业设计说明书

 

题目基于WEB购票系统的设计与实现

院(系)计算机系

专业年级2010级计本一班

学生姓名学号**********

指导教师职称副教授

日期2014年1月——2014年4

基于WEB购票系统的设计与实现

中文摘要:

随着计算机软件技术的发展,为了方便人们工作上和生活上各式各样的需求,各类应用软件应运而生。

在购买车票方面,传统的窗口购票方式以不能满足旅客在出行方面的需求,传统的购票方式暴露出很大的弊端,在春运期间人工售票远远的不能满足旅客出行的需求,并且降低了游客的出行效率,为了方便民众快捷出行的需求,因而产生了购票系统,购票系统的出现大大的方便民众的出行,减少了旅客在旅途中耗费的时间,同时也降低了车站员工售票的工作量。

由于当前计算机网络技术的发展,网上购票已经不是难事,为当前的购票系统的发展奠定了基础。

 

 

第一章绪论

1.1项目背景

21世纪是网络信息的时代,现代社会都是利用快速高效率的Internet来传播大量信息资源。

而传统的售票方式已经不能满足用户对购票的需求,人们想通过一种更为快捷更为方便的购票方式来满足出行的需求,人们借助于当前飞速发展的网络来实现旅客的购票,因而产生了购票系统,网上购票系统大大的提高了用户对出行的需求。

随着多媒体技术和网络通信技术的发展,网上购票系统解决了用户发费大量时间购票的问题,且旅客可以在不出门的情况下购买以后几天需要出行的车票,此种购票方式越来越受到人们的关注。

它有着传统购票所无可比拟的优点,它创造了一种全新的购票方式,大大提高了满足旅客对出行购票的需求,并且降低了站台售票员工的工作量。

1.2项目概述

近年来随着科学技术的飞速发展,人们对生活的方方面面的需求多不断加高,生活节奏不断加快,为了适应快节奏的生活,人们的时间显得格外的重要。

网上购票系统就是节约民众出行时间的一款软件,在传统窗口售票的方式中,人们需要在拥挤的人群中排队购票,且不清楚自己能够的车票的出发时间,上诉的两个情况导致游客在旅途中耗费了相当大部分的时间。

而使用网上购票系统,就能提前掌握好出行的时间,在旅途中为旅客节省大量不必要浪费的时间,这种新时代的出行方式应该得到更大的推广。

本文实现了网上订票系统各个功能模块的实现,用户通过注册成为该系统用户、登录系统、修改用户登录密码、车票查询、退票、票价查询、余票查询、和订单查询等功能,能满足旅客对购票的需求。

1.3相关技术简介

1.3.1Struts2

Struts2是Struts的下一代产品,是在struts1和WebWork的技术基础上进行了合并的全新的Struts2框架。

其全新的Struts2的体系结构与Struts1的体系结构差别巨大。

Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。

虽然从Struts1到Struts2有着太大的变化,但是相对于WebWork,Struts2的变化很小。

当Web容器收到请求(HttpServletRequest)它将请求传递给一个标准的的过滤链包括流程(ActionContextCleanUp)过滤器,然后经过Otherfilters(SiteMesh,etc),

接下来需要调用FilterDispatcher核心控制器,然后它调用ActionMapper确定请求那个Action,ActionMapper返回一个收集Action详细信息的ActionMaping对象。

接下来FilterDispatcher将控制权委派给ActionProxy,ActionProxy调用配置管理器(ConfigurationManager)从配置文件中读取配置信息(struts.xml),然后创建ActionInvocation对象,ActionInvocation在调用Action之前会依次的调用所用配置拦截器(InterceptorN)一旦执行结果返回结果字符串ActionInvocation负责查找结果字符串对应的(Result)然后执行这个ResultResult会调用一些模版(JSP)

来呈现页面,之后拦截器(InterceptorN)会在被执行(顺序和Action执行之前相反)最后响应(HttpServletResponse)被返回在web.xml中配置的那些过滤器和(核心控制器)(FilterDispatcher)

1.4开发和运行环境选择

1.4.1开发环境

硬件配置:

ØCPU:

intelcorei3

Ø内存:

2G

Ø硬盘空间:

500G

软件配置:

Ø操作系统:

Windows7

Ø开发工具:

myeclipse10,mysql数据库

1.5开发工具简介

1.5.1Myelcipse简介

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate[1]。

MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。

MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。

可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。

[1]

根据官方最新消息,MyEclipse2013已经正式发布!

MyEclipse2013[2]支持HTML5、JQuery和主流的Javascript库。

随着MyEclipse2013支持Html5,你可以添加音频、视频和API元素到你的项目,从而为移动设备创建复杂的Web应用程序。

你甚至还可以通过HTML5可视化设计器设计令人难以置信的用户界面。

同时,随着MyEclipse2013支持JQuery,你可以通过插件提升性能,并添加动画效果到设计中。

1.5.2Mysql简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。

Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:

关系数据库管理系统)应用软件之一。

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。

MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。

与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。

对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

Linux作为操作系统,Apache和Nginx作为Web服务器,MySQL作为数据库,PHP/Perl/Python作为服务器端脚本解释器。

由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为“LAMP“组合[2]。

 

第二章需求分析

2.1系统建立的目标

根据传统的售票原理和方式,该购票系统用户可以根据出发时间、出发起始站和目的站选择需要购买的列车班次,用户在选择购买的班次后输入用户的个人信息后点击确定完成此次购票。

用户还可以根据购买时输入的个人信息查询到所购买的车票的基本信息,如果用户在取消此次出行的情况下,可以选择退票模块进行退票操作,用户同时可以根据目的站和出发站和出发时间查询到当天此条线路的列车的发车时间,票价和余票数。

2.2系统需求

2.2.1系统功能需求

根据本系统的基本要求,该系统最主要使用对象是购票旅客,购票旅客在使用系统的前提下需要进行注册,根据注册账号和密码登录后方能进行购票等一系列的操作,根据旅客操作性质的不同将旅客的操作分为购票模块、退票模块、余票查询模块、票价查询模块、订单查询模块、和用户密码修改模块

需求如下:

✧未登录的用户可以直接进入系统的首页。

未登录的用户可以对用户的注册和登录功能进行操作,在点击其他功能模块的情况下直接跳转到登录模块,如果未获得系统的登录名和密码需要进行用户注册。

✧实现用户的注册。

进入登录页面后,完整的填写用户注册需要填写的基本信息并全部获得正确结果,点击确定按钮完成注册。

✧用户能对用户的登录密码进行修改。

在用户已经登录的情况下,用户可以进入密码修改模块,输入正确的登录密码,输入两次完全相同的新密码,点击确定按钮完成对用户密码的修改。

✧用户能进行购票购票操作。

用户进入购票模块后,输入出发站和目的站和出发时间,进行搜索,然后选择合适的出发车次进行购票,输入自己的基本信息完成购票操作。

✧进行查询余票和查询票价操作。

用户需要输入目的站和出发站和出发时间进行查询,得到想要获得的车次票务信息。

✧进行订单查询。

用户需要输入购票时输入的个人信息,查询获得已经购买的车票信息。

2.2.2输入输出要求

用户通过Web页面输入必要数据,经提交后由数据库处理并返回用户终端,由浏览器返回结果。

2.2.3Web页面需求

提供风格简洁清新的界面;

提供用户登录入口。

2.3系统用例建模

根据需求分析,该系统的主要使用者为需要购票的用户。

系统用例图如图2-1所示:

图2-1系统用例图

第三章系统设计

3.1系统模块设计

本系统分为如下功能结构,如图3-1所示

图3-1系统功能结构图

3.1.1注册模块

功能描述:

本模块是面向所有所有使用本系统的用户,通过注册本系统用户名,注册成功后成为本系统的使用用户,然后登录系统,对系统的功能进行使用。

用户先进入注册页面,填写注册信息,然后提交,系统会判断用户资料是否合法,是则注册成功,否则注册失败,需要重新填正确的用户信息。

注册模块活动图如图3-2所示:

图3-2注册模块活动图

3.1.2用户登录模块

功能描述:

页面提供用户的登录。

用户登录该系统需要填写注册时填写的用户名和密码,填写完后输入正确的验证码信息,点击登录,如果输入的所有信息正确成功登录该系统,否则弹出提示信息,重新填写正确的用户、密码和验证码。

会员登录活动图如图3-3所示:

图3-3会员登录模块活动图

3.1.3车票预定模块

功能描述:

用户需要输入出发站、目的站和出发时间,点击搜索,如果存在该条线路的列车,返回符合条件的列车信息,如果不存在该条线路的列车或则是无返回信息。

管理员登录模块活动图如图3-4所示:

图3-4车票预定模块功能图

3.1.4退票模块模块

功能描述:

退票模块,用户需输入购票时填写的姓名和身份证号进行查询进行搜索,如果存在已预定车票,页面返回车票信息,如果没有预定车票,页面无信息返回,根据页面返回的信息选择需要需要进行退票操作的车票。

退票模块活动图如图3-5所示:

图3-5退票模块活动图

3.1.5余票查询模块

功能描述:

用户需要输入目的站、出发站和出发时间对车次进行查询,如果有信息返回表示存在符合条件的列车,如果无返回表示没有符合条件的列车信息。

该功能模块的活动图如图3-6所示:

图3-6余票查询活动图

3.1.6票价查询模块

功能描述:

用户输入出发站,目的站和出发时间进行余票的查询,如果存在责返回页面信息,若不存在页面无返回信息。

类目管理活动图如图3-7所示:

图3-7票价查询活动图

3.1.7订单查询模块

功能描述:

用户输入购票时输入的姓名和身份证号进行订单查询,如果存在则在页面返回订单信息,若不存在则在页面无返回信息,当页面又返回信息时可以进行退票操作。

订单处理活动图如图3-8所示:

图3-8查询订单活动图

3.2页面框架的设计

页面框架如图3-10所示:

图3-10页面框架截图

3.3数据库设计

3.3.1数据库结构设计

根据系统需求,分为四个表:

Ø用户登录表

用户登录表(user)用户记录用户登录系统的相关信息,结构如表3-12所示:

表3-12用户表登表(Book)

列名

数据类型

描述

长度

是否主键

非空

Id

int

用户id

4

不能为空

Username

varchar

用户名

20

不能为空

Password

varchar

密码

20

不能为空

email

varchar

邮箱

12

不能为空

phoneNo

varchar

电话

11

不能为空

Ø汽车表

汽车表(car)用来记录出发列车的基本信息,结构如表3-13所示:

表3-13汽车表(OrderContent)

列名

数据类型

描述

长度

是否主键

非空

Car_id

int

列车id

3

不能为空

Train_number

varchar

车次

10

不能为空

number

int

余票数

3

不能为空

Car_number

varcahr

车牌号

6

不能为空

Ø用户订单表

车票信息表(arrangement)用来记录车票的基本信息,结构如表3-14所示:

表3-14车票信息表(Orders)

列名

数据类型

描述

长度

是否主键

非空

arrangement_id

Int

车票信息id

3

不能为空

train_number

varchar

车次

10

不能为空

mudizhan

varchar

目的站

20

不能为空

begin_time

date

出发日期

不能为空

begin_date

time

出发时间

不能为空

end_time

date

到达日期

不能为空

price_tick

float

票价

6

不能为空

shichang

varchar

时长

10

不能为空

chufazhan

varchar

出发站

20

不能为空

Ø订单信息表

订单信息表(Users)用来记录订单的信息,结构如表3-15所示:

表3-15订单信息表(Users)

列名

数据类型

描述

长度

是否主键

非空

Id

int

订单id

5

不能为空

name

varchar

姓名

20

不能为空

Card_id

varchar

身份证号

20

不能为空

Train_number

varchar

车次

10

不能为空

mudizhan

varchar

目的站

20

不能为空

chufazhan

varchar

出发站

20

不能为空

begin_time

date

出发日期

不能为空

begin_date

time

出发时间

不能为空

第四章系统实现

4.1用户注册模块的实现

页面说明:

在用户注册页面中,提供5个文本框,分别录入用户的注册信息。

下面是一个提交按钮,分别处理用户填写信息的提交。

如图4-1所示:

图4-1用户注册页面截图

4.2用户登录模块的实现

4.2.1用户登录模块

页面说明:

在用户登录页面中,提供3个文本框,分别录入用户名及用户密码及验证码。

下面是一个用户登录按钮右侧有用户注册按钮,分别处理登录事件和非用户的注册事件。

如图4-2所示:

图4-2会员登录页截图

4.3车票预定模块的实现

4.2.2车票预定模块

页面说明:

用户需要根据页面显示的信息进行输入,然后点击车票查询,如果存在返回信息表示查询成功。

如图4-3所示:

图4-3车票预定页面截图

4.4退票模块的实现

4.4.1退票模块

页面说明:

用户需要填入购票时填写的姓名和身份证号进行查询订单信息,然后对返回的信息进行退票操作。

如图4-4所示:

图4-4退票页面截图

4.5余票查询模块的实现

4.5.1余票查询模块

页面说明:

用户输入页面所要填写的信息,始发站、到达站、和出发的时间进行查询。

如图4-5所示:

图4-5余票查询页面截图

4.6票价查询模块的实现

4.6.1票价查询模块

页面说明:

用户根据页面提示的信息对页面进行输入然后,点击查询按钮

如图4-6所示:

图4-6票价查询页面截图

4.7订单查询模块的实现

4.7.1订单查询模块

页面说明:

用户进入该页面后,输入购票时填写的姓名和身份证号进行查询。

页面如图4-7,4-7所示:

图4-7订单查询页面截图

4.8用户密码修改模块的实现

4.8.1密码修改模块

页面说明:

进入用户密码修改页面后,用户需要输入旧密码,然后输入新密码,输入的两次密码一直后,才能进行密码修改操作。

其页面如图4-8所示:

图4-8密码页面截图

第五章工作总结和展望

5.1工作总结

经过3个月左右的时间,通过自我学习及老师和同学的帮助,现在已完成了毕业设计所要求的内容。

本次毕业设计使我受益非浅,在做毕业设计的过程中,极大的锻炼了我的动手能力,还培养了我分析问题、解决问题的能力,这些将对我在以后的学习和工作中有很大的帮助。

本次毕业设计的要求是基于WEB来开发一个购票。

由于自己以前从来没有独立使用过一种开发平台去完成某个系统设计,而且在编程中需要采用框架编程,而在大学期间未接触过框架,因此这次毕业设计对我来说任务是相当艰巨的。

在完成本次毕业设计的过程中,导师给了我很多的帮助,向我推荐了一些非常有价值的参考书和一些实用的绘图工具。

通过自我学习之后,对本次系统开发所需要涉及的知识也有了进一步掌握。

在不断学习和在设计中摸索,使我学会了以前理论知识中无法学到的知识。

因此这次毕业设计对我的知识和能力是一个很大的提高,本次毕业设计使我体会到只有在工作中不断摸索和创新才会使人进步

5.2工作展望

本次毕业设计基本达到了设计任务书的要求,但是由于时间仓促,没考虑得十分周全,使系统中仍然存在一些不妥,比如当进行某些操作时未能对用户进行友好的提示,在插入车票信息时也只能通过数据库管理员手动的插入。

另外,一个强大而运行规范的在购票系统绝不仅仅包含本次设计所实现的功能,它应该是多功能的,方便快捷的,为售票运行提供多方面服务,以及为顾客提供相关帮助的系统。

随着人类知识不断深入和不断深化,尤其是随着网络传输速率的提高和新型传输介质的使用以及专家系统、人工智能等的发展,势必大大丰富在购票系统的内容与功能。

 

致谢

衷心感谢我的指导老师老师,本次毕业设计在他的悉心指导和关怀下才得以顺利完成。

老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅。

无论在理论上还是在实践中,老师给予我的关怀使我得到不少的提高,这对于我今后的学习和工作都是一种巨大的帮助。

同时还要感谢我的同小组的成员,感谢工商大学派斯学院计算机学院,感谢我的母校重庆工商大学派斯学院!

 

参考文献

[1]李刚著,Struts权威指南,中国人教出版社2009年6月

[2]陈臣编,研磨Struts2清华大学出版社2011年10月

[3]雷之宇郑圣蒲孙皓著,用案例学JavaWeb整合开发, 电子工业出版社,2009年11月

[4]胡波邱加永许焕新著,Struts2基础与案例开发详解,清华大学出版社,2013年10月

[5]常建功,王向华著,搞定J2EE核心技术与企业应用,电子工业出版社,20012年6月

 

附录

用户手册

1.用户帐号信息

用户帐户:

zheng

用户密码密码:

1234

2.安装系统的要求

计算机必须满足的条件:

(1)操作系统:

MicrosoftWindowsXP或MicrosoftWindows7。

(2)装有tomcat服务器和jdk1.6或者高版本

(4)装有mysql数据库。

推荐桌面显示方式:

1024*768像素。

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2