基于WEB购票系统的设计与实现_第1页
基于WEB购票系统的设计与实现_第2页
基于WEB购票系统的设计与实现_第3页
基于WEB购票系统的设计与实现_第4页
基于WEB购票系统的设计与实现_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE毕业设计说明书题目基于WEB购票系统的设计与实现院(系)计算机系专业年级2010级计本一班学生姓名学号2010305116指导教师职称副教授日期2014年1月——2014年4PAGE基于WEB购票系统的设计与实现中文摘要:随着计算机软件技术的发展,为了方便人们工作上和生活上各式各样的需求,各类应用软件应运而生。在购买车票方面,传统的窗口购票方式以不能满足旅客在出行方面的需求,传统的购票方式暴露出很大的弊端,在春运期间人工售票远远的不能满足旅客出行的需求,并且降低了游客的出行效率,为了方便民众快捷出行的需求,因而产生了购票系统,购票系统的出现大大的方便民众的出行,减少了旅客在旅途中耗费的时间,同时也降低了车站员工售票的工作量。由于当前计算机网络技术的发展,网上购票已经不是难事,为当前的购票系统的发展奠定了基础。基于WEB购票系统的设计与实现 i第一章绪论 11.1项目背景 11.2项目概述 11.3相关技术简介 21.4开发和运行环境选择 41.5开发工具简介 4第二章需求分析 92.1系统建立的目标 92.2系统需求 92.3系统用例建模 11第三章系统设计 253.1系统模块设计 253.2页面框架的设计 323.3数据库设计 32第四章系统实现 354.1用户注册模块的实现 354.2用户登录模块的实现 364.3车票预定模块的实现 374.4退票模块的实现 384.5余票查询模块的实现 394.6票价查询模块的实现 404.7订单查询模块的实现 404.8用户密码修改模块的实现 41第五章工作总结和展望 435.1工作总结 435.2工作展望 43致谢 45参考文献 45附录 46用户手册 46第一章绪论1.1项目背景21世纪是网络信息的时代,现代社会都是利用快速高效率的Internet来传播大量信息资源。而传统的售票方式已经不能满足用户对购票的需求,人们想通过一种更为快捷更为方便的购票方式来满足出行的需求,人们借助于当前飞速发展的网络来实现旅客的购票,因而产生了购票系统,网上购票系统大大的提高了用户对出行的需求。随着多媒体技术和网络通信技术的发展,网上购票系统解决了用户发费大量时间购票的问题,且旅客可以在不出门的情况下购买以后几天需要出行的车票,此种购票方式越来越受到人们的关注。它有着传统购票所无可比拟的优点,它创造了一种全新的购票方式,大大提高了满足旅客对出行购票的需求,并且降低了站台售票员工的工作量。1.2项目概述近年来随着科学技术的飞速发展,人们对生活的方方面面的需求多不断加高,生活节奏不断加快,为了适应快节奏的生活,人们的时间显得格外的重要。网上购票系统就是节约民众出行时间的一款软件,在传统窗口售票的方式中,人们需要在拥挤的人群中排队购票,且不清楚自己能够的车票的出发时间,上诉的两个情况导致游客在旅途中耗费了相当大部分的时间。而使用网上购票系统,就能提前掌握好出行的时间,在旅途中为旅客节省大量不必要浪费的时间,这种新时代的出行方式应该得到更大的推广。本文实现了网上订票系统各个功能模块的实现,用户通过注册成为该系统用户、登录系统、修改用户登录密码、车票查询、退票、票价查询、余票查询、和订单查询等功能,能满足旅客对购票的需求。1.3相关技术简介1.3.1Struts2Struts2是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系统用例图PAGE第三章系统设计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)列名数据类型描述长度是否主键非空Idint用户id4是不能为空Usernamevarchar用户名20否不能为空Passwordvarchar密码20否不能为空emailvarchar邮箱12否不能为空phoneNovarchar电话11否不能为空汽车表汽车表(car)用来记录出发列车的基本信息,结构如表3-13所示:表3-13汽车表(OrderContent)列名数据类型描述长度是否主键非空Car_idint列车id3是不能为空Train_numbervarchar车次10否不能为空numberint余票数3否不能为空Car_numbervarcahr车牌号6否不能为空用户订单表车票信息表(arrangement)用来记录车票的基本信息,结构如表3-14所示:表3-14车票信息表(Orders)列名数据类型描述长度是否主键非空arrangement_idInt车票信息id3是不能为空train_numbervarchar车次10否不能为空mudizhanvarchar目的站20否不能为空begin_timedate出发日期否不能为空begin_datetime出发时间否不能为空end_timedate到达日期否不能为空price_tickfloat票价6否不能为空shichangvarchar时长10否不能为空chufazhanvarchar出发站20否不能为空订单信息表订单信息表(Users)用来记录订单的信息,结构如表3-15所示:表3-15订单信息表(Users)列名数据类型描述长度是否主键非空Idint订单id5是不能为空namevarchar姓名20否不能为空Card_idvarchar身份证号20否不能为空Train_numbervarchar车次10否不能为空mudizhanvarchar目的站20否不能为空chufazhanvarchar出发站20否不能为空begin_timedate出发日期否不能为空begin_datetime出发时间否不能为空第四章系统实现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密码页面截图第五章工作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论