毕业设计说明书火车票网上预约订购系统资料.docx

上传人:b****4 文档编号:11535577 上传时间:2023-03-19 格式:DOCX 页数:25 大小:705.17KB
下载 相关 举报
毕业设计说明书火车票网上预约订购系统资料.docx_第1页
第1页 / 共25页
毕业设计说明书火车票网上预约订购系统资料.docx_第2页
第2页 / 共25页
毕业设计说明书火车票网上预约订购系统资料.docx_第3页
第3页 / 共25页
毕业设计说明书火车票网上预约订购系统资料.docx_第4页
第4页 / 共25页
毕业设计说明书火车票网上预约订购系统资料.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

毕业设计说明书火车票网上预约订购系统资料.docx

《毕业设计说明书火车票网上预约订购系统资料.docx》由会员分享,可在线阅读,更多相关《毕业设计说明书火车票网上预约订购系统资料.docx(25页珍藏版)》请在冰豆网上搜索。

毕业设计说明书火车票网上预约订购系统资料.docx

毕业设计说明书火车票网上预约订购系统资料

毕业设计说明书

 

火车票网上预约订购系统

 

学生姓名:

学号:

计算机与控制工程学院

学院:

网络工程

专业:

指导教师:

2016年6月

火车票网上预约订购系统

摘要

火车票网上预约订购系统是一款联系人们和车票官方的管理软件。

通过系统的实现方便人们的日常出行,为人们提供便利条件。

本系统使用JAVA语言开发,使用Myeclipse作为开发工具,同时使用SQLServer数据库进行数据的存储,并且使用SSH框架提高了功能实现效率,增加了系统的可维护性。

主要功能分为两大模块,①管理员模块;②用户模块。

其中管理员模块

主要实现的功能有:

车次管理、新闻管理、公告管理、留言管理及会员信息;用户模块实现的主要功能有:

查询功能、车票预定功能以及个人信息的管理。

本系统经过测试,所有功能均达到预计功能。

关键词:

网上订票,JAVA,Myeclipse,SSH,SQLServer

Ordertrainticketsonlinebookingsystem

Abstract

Ordertrainticketsonlinebookingsystemisasoftwareofcontactpeopleandtheofficialmanagement.TherealizationoftheconvenientPeople’sDailytravelandprovideconvenienceforpeople.

ThesystemuseJAVAlanguagedevelopment,anduseofMyeclipseasdevelopmenttools,atthesametime,usingSQLServerdatabasefordatastorage,improvetheefficiencyofthefunctionsandsuingSSHframework,increasethemaintainabilityofthesystem.Mainfunctionisdividedisdividedintotwobigmodules,

(1)theadministratormodule;

(2)theusermodule.Theadministratormodulemainfunctionsforimplementationareinclude:

Servicemanagement,newsmanagement,bulletinmanagement,messagemanagementandmemberinformation;Theusermodulemainfunctionsforimplementationareinclude:

thefunctionsofquery,ticketbookingandmanagementofpersoninformation.Aftertesting,thesystemofallfunctionscanachieveexpectedfunction.

Keywords:

BookingTicketsOnline,JAVA,Myeclipse,SSH,SQLServer

 

1需求分析

了解火车票网上预约订购系统的具体实现流程,以及每个流程所要实现的功能和操作,对其进行详细分析和总结,明确得出完成系统所需要的概念。

本系统主要解决网上购票和订票等功能,满足不同用户在不同时间提出的不同需求。

同时需要系统能够高效安全可靠的为用户服务,同时还要解决负载问题。

1.1问题定义

首先,系统能够安全流畅的运行,为用户提供所需要的服务。

用户可以在网上根据自身需求去订购车票,用户输入的姓名、身份证号、出发时间、出发地点及目的地将被传入到数据库中,然后根据要求为旅客安排出行车次,旅客可以在出发前将票取出,或者进行退票的操作。

1.2系统需求

这款管理系统主要是用于火车票网上订票。

根据使用者的需求,可以实现对系统中对应的信息进行增删改查等操作。

并建立以下2个大模块:

1.2.1管理员功能模块:

(1)车次管理功能模块:

管理员通过系统将列车的车次信息、经过的站点、时间、票价等信息录入系统并存入数据库中,当用户在系统中进行查询数据时,系统将查询的数据结果返回给用户,实现用户和系统之间的交互。

(2)车票预定管理功能模块:

当用户登陆后对车票进行购买和预定,管理员要通过系统对这些操作进行管理。

(3)新闻管理功能模块:

新闻模块主要向对旅客展示新闻信息,管理员通过后台系统对数据库中的信息进行修改、增加和删除等操作。

(4)公告管理功能模块:

公告模块会提示旅客列车信息,到站时间、是否晚点等,管理员通过系统后台对这些信息进行修改等操作,防止旅客出现晚点和在车站等待时间过长等情况。

(5)留言管理功能模块:

旅客在使用系统过程中对系统有什么建议或者意见可以通过该模块进行提交,管理员可以对这些信息进行采集,并做出相应的改进,提高旅客的满意度,为旅客提供更好的服务。

1.2.2普通用户功能模块:

(1)查询功能模块:

旅客可以直接登陆系统进行余票的查询、新闻的查询等,余票查询条件分为按照时间查询和按照站点查询,并将查询结果返回给用户。

(2)车票管理功能模块:

根据旅客自身的需求购买和预定车票,在一定时间后预定的车票如果没有确定订单则会被取消。

(3)个人信息管理功能模块:

当旅客想要购买车票、预订车票还有留言时则需要进行系统注册,并将结果存储在数据库中,登陆时进行验证,验证通过后才可以实现以上操作。

1.3系统功能图

 

 

图1.1系统功能图

1.4可行性分析

在系统初步的需求分析阶段,需要提出可行性的方案来进行论证,所以,这部分内容将从技术可行性,操作可行性和经济可行性三个方面进行论述。

1.4.1技术可行性

本系统使用Myeclipse作为开发工具,数据库采用SQLServe,系统环境为MicrosoftWindows2000或以上版本。

同时系统开发使用的是JAVA语言,整个项目的本质是对数据库的增加、删除、查找以及修改等操作。

因此,技术可行性达标。

1.4.2操作可行性

使用的开发工具是Myeclipse,能够在Windows操作系统下运行,操作方便,用户可以通过系统中的帮助说明进行操作,简单可行。

用户不必了解系统的实现过程,所以系统需要做一个图形化界面和用户进行交互,也就是说要为用户提供一个接口,用户只需要了解系统如何使用,所以界面要设计的简单易懂操作方便。

因此,操作可行性达标。

1.4.3经济可行性

本系统开发的所有工具都是开源的,已于获取的。

在本系统投入使用以后,与传统的购票方式相比,将会省去大量的人力、物力、财力。

因此,在经济可行性方面可行。

1.5本章小结

本章主要对火车票网上订购系统在需求、功能、可行性等方面进行综合论述。

首先对系统需求进行了分析和概括,在明确了本系统所要实现目标的同时,提出相应的总体设计思路、设计功能与所要使用的实现方法,最终通过系统需求中要求实现的功能描述,对系统要实现的内容进行了概要论述。

2概念结构设计

这部分将提出整个系统的总体实现方案,明确软件的总体布局,系统的各个子模块的功能和模块之间的关系,总结出数据库中表的设计方案。

2.1系统基本流程

图2.1是本系统实现的最基本的功能流程,用户提出不同的需求,系统通过用户的请求与数据库进行交互,返回用户请求的相应信息,显示在客户端中,作为火车票订购系统购票是最基本的功能,用户通过查询,购买满足自己需求的车票。

 

图2.1系统基本流程图

2.2数据表及E-R图

2.2.1数据表

管理员信息(管理员ID,管理员密码,管理员名)

用户信息(用户ID,姓名,密码,真实姓名,性别,邮箱,地址,QQ,电话)

车次基本信息(车次ID,路线,日期,到达时间,出发时间,票数,票价)

公告信息(公告ID,标题,日期,发布人)

留言信息(留言ID,标题,日期,内容,留言人)

新闻信息(新闻ID,标题,日期,图片名)

车票预订信息(预定ID,预定用户ID,预定车次ID,数目,金额,支付方式,时间,预定状态)

 

2.2.2E-R图

图2.2是用户查询火车票流程的E-R图,用户有ID、用户名和密码等基本属性信息,车次有车次ID、路线和票价等基本属性,两者通过查询操作建立连接,并且是多对多的关系。

一个用户可以查询多趟列车,一趟列车可以被多个用户查询。

 

图2.2用户查询车次E-R图

2.2.3数据库表的设计

表2.1是管理员表的设计,主要用于存储管理员信息,当对管理员信息进行修改、增加等操作时,将对这张表中的相应数据进行修改。

表2.1管理员表设计

属性名

存储类型

属性值能否为空

属性值含义

userID

int

管理员ID(主键)

userName

varchar(50)

管理员名

userPw

varchar(50)

密码

表2.2是用户表的设计,用于存储用户的注册信息,当用户通过系统注册时,注册的信息将被录入到这张表中,当用户对自己的信息进行修改时,将对应改变表中的数据。

表2.2用户表设计

属性名

存储类型

属性值能否为空

属性值含义

user_id

int

用户ID(主键)

user_name

varchar(50)

用户姓名

user_pw

varchar(50)

用户密码

user_realname

varchar(50)

真实姓名

user_address

varchar(50)

地址

user_sex

varchar(50)

性别

user_tel

varchar(50)

电话

user_email

varchar(50)

邮箱

user_qq

varchar(50)

QQ

表2.3是车次表的设计,用于存储管理员录入的车次信息,当用户查询车次信息时,系统将通过内部方法将这张表中的数据呈现给用户;管理员对车次信息进行修改时,将修改这张表中的对应信息。

表2.3车次表设计

属性名

存储类型

属性值能否为空

属性值含义

id

int

车次ID(主键)

luxian

varchar(50)

路线

piaoshijian

varchar(50)

日期

startshijian

varchar(50)

开车时间

endshijian

varchar(50)

到站时间

piaojia

int

票价

piaoshu

int

票数

表2.4是公告表的设计,用于存储管理员在后台录入的公告信息,将通过主键修改表中的对应信息。

用户在首页看到的公告信息是系统通过内部方法将这张表中的信息放在jsp页面中。

表2.4公告表设计

属性名

存储类型

属性值能否为空

属性值含义

gonggao_id

int

公告ID(主键)

gonggao_title

varchar(50)

标题

gonggao_content

varchar(8000)

发布内容

gonggao_date

varchar(50)

发布时间

gonggao_fabuzhe

varchar(255)

发布人

表2.5是留言表的设计,用于存储用户在留言界面的留言内容,当管理员对留言进行查看和管理时,这张表中的内容将在页面上呈献给管理员。

表2.5留言表设计

属性名

存储类型

属性值能否为空

属性值含义

liuyan_id

int

留言ID

liuyan_title

varchar(50)

留言标题

liuyan_content

varchar(5000)

留言内容

liuyan_date

date

留言日期

liuyan_user

varchar(50)

留言人

表2.6是图片新闻表的设计,用于存储管理员录入的新闻信息,用户在首页中查看到的新闻也是这张表中的信息,当管理员在后台系统中对图片新闻进行修改时,将会修改这张表中的对应信息。

表2.6图片新闻表设计

属性名

存储类型

属性值能否为空

属性值含义

picNews_id

int

新闻ID

picNews_title

varchar(50)

标题

picNews_content

varchar(5000)

内容

picNews_pic

varchar(50)

图片名

表2.7是用户预定车票表的设计,用户成功订购车票后,车次的基本信息,用户的基本信息等都会存储在这张表中。

当管理员修改用户的预定车票信息时,将通过主键修改这张表中的对应信息。

表2.7预定表设计

属性名

存储类型

属性值能否为空

属性值含义

yvding_id

int

预定号

User_id

int

用户ID

Checi_id

int

车次ID

yvding_shumu

int

预定数目

yvding_jine

varchar(50)

预定金额

zhifufangshi

varchar(50)

支付方式

yvding_shijian

date

预定时间

yvding_zhuangtai

int

预定状态

2.3本章小结

本章主要介绍了系统的各个模块,并给出了数据表和E-R图,详细设计了每张表的类型属性。

展示了整个系统的基本流程,抽象出了每个对象和对象的具体属性,并且展示了对象和对象间的关系,逐步清晰整个系统的思路,目标明确,方便后期维护与修改。

 

3详细设计

3.1程序主框架

整个系统使用了SSH框架,简化代码量,通过jsp页面显示信息实现系统与用户的交互。

框架主要负责接受用户发送的请求(request)和传送系统响应(response),然后根据配置的struts.xml文件中的配置信息将ActionServlet接收到用户发送过来的Request请求转发给相应的Action做业务处理,完成相应的业务处理后将返回一个ActionForward对象,控制器通过返回的ActionForward对象将工作转发到相应的模型层中,同时Action将业务处理后产生的不同结果返回一个目标响应对象传递给总控制器,总控制器在通过Action处理后的目标响应对象找到对应的jsp页面,将结果展示给用户,实现系统与用户的信息交互。

所以,在项目的com.action包中存放处理各个相应功能的类;com.dao包中存放利用Hibernate封装DAO类来实现各个类与数据库的数据交换;com.model包中存放了每个Java类的封装模型,使用里面提供的GET和SET方法对数据表的属性进行获取和添加;在com.service包中存放了一个Java类,实现用户的登录,管理员和用户的密码修改以及预付款金额;com.util中封装了项目的常用方法,如分页信息,格式化时间等。

整个项目通过使用Spring框架的规划使代码量减少,条理清晰,降低了程序的耦合,增加了代码的重复利用性。

3.2启动界面

启动界面如图3.1所示,整个界面由incFoot.jsp,incleft.jsp和inoTop.jsp三个页面组成,呈现在用户面前的主框架均由这三个页面通过

include>标签链接页面组合而成。

里面的菜单栏是一个整体的

,里面的每一个小的选项都是一个
  • 标签,在
  • 的标签里面嵌套了一个标签的超链接,并且在thisclass的JS中设置样式和function方法来实现页面的跳转。

    第二部分主体是一个

    ,在
    中嵌套的一个,最后在里面放入标签,里面分别嵌套7个
    分别存放从数据库读出来的图片信息,图片下方显示新闻的标题。

    第四部分车次信息,也是两个大的

    框,里面四个
    标签,用于显示车次的基本信息。

    第五部分用户登录,是有

    里面使用
    等标签构成界面,相对比较简单。

    第六部分网站公告,用于显示当前车次晚点信息等情况,使旅客可以比较方便的调整自己的行程。

    最后一部分网站日历表,这部分有一个单独的jsp页面实现,通过Calendar这个类获取到当前的年、月、日,在页面加载之后通过onload=”showTime()”方法将日历信息显示给用户。

    图3.1启动界面

    3.3用户模块

    3.3.1系统首页

    这部分是一个标签,用户点击后系统将自动返回到启动的初始界面。

    3.3.2免费注册

    这部分将免费注册嵌套的标签中,点击后将跳转到图3.2所显示的注册界面,注册界面收集用户的注册信息,用户将信息添加之后,点击确定按钮,表单使用post方法利用action将数据提交到userReg.action这个类中,在这个类中创建了一个新的user对象,通过user提供的set方法将传进来的值存储到新建的对象中,在里面调用userDAO.save()方法将数据保存到数据库中,而userDAO包中的save()方法中使用getHibernateTemlate().save()方法将信息存储到数据库中,在userAction中返回一个SuccessAdd,这时,在Struts.xml中有一个全局的配置,返回的SuccessAdd与中的匹配的值并且返回后面的jsp页面。

    userReg.action类在Strust.xml中进行配置,在配置中将request请求信息转发至userAction中进行处理,处理过后,userAction将返回值为response信息传递给userDAO与数据库进行交互,并调用com.model中Tuser.java中的构造方法完成本次注册。

    图3.2注册页面

    3.3.3会员功能模块

    这部分是注册用户管理自己信息的功能模块,其中还未注册或者是未登录的用户不能够使用这个功能,里面包括密码修改,个人资料查询,个人积分和个人订单查询等几个功能,如图3.3所示。

     

     

    图3.3会员中心菜单页面

    功能一:

    修改密码,图如3.4所示,系统会从数据库中自动找到更改人的原用户名,同时用户名设置为readonly属性,只能够读取不能够被修改,用户输入原密码系统通过得到的用户输入的信息与存在session中的密码进行比较,如果输入的密码和原密码不同则会提示错误信息,如果相同则进行后续工作,用户可以输入新的密码,同时输入一次确认密码,系统将获取两次的值进行比较,对比是否相同,再点击修改后如果全部符合要求,则在loginService.java类中对数据进行处理,并将新的密码信息传递到数据库并且返回修改成功的提示。

    图3.4会员中心修改密码页面

    功能二:

    修改个人信息,如图3.5所示,系统找出存放在各个对应在相应session中的属性值设置为文本框的value值显示在文本框中,其中用户名和密码的属性为readonly,只能够让用户看到,用户没有修改的权限。

    系统将获取到的信息通过表单的post方法进行提交,设置的路径path为userEdit.action,在Struts.xml中找到对应的配置并通过配置的属性信息,将表单数据提交到名为userAction.java的类中,找到里面对应的userEdit()方法,方法中通过servletActionContext().getContext().getSession()方法获取到了存放在session中的属性信息,通过实例化一个新的对象,并使用在本类中对应的set()方法为属性赋新的属性值。

    然后通过在userDAO类中声明的attachDirty()方法将数据保存到数据库中。

    同时返回操作成功的提示并且返回到修改个人信息界面。

    完成个人信息的修改。

     

    图3.5会员中心修改个人信息页面

    功能三:

    用户积分功能,用户通过成功购买票的次数慢慢累加积分,其中用户注册后会送1积分,每成功购票一次则加1积分,当积分在5分到10分之间时,则属于普通会员阶段,购票时享受9折优惠;当积分在11分到20分之间时,则属于白银会员,购票时享受7折优惠;当积分在20分以上时,则属于黄金会员,购票时享受5折优惠。

    功能四:

    查询个人订单功能,系统通过request.yudingList方法获取到用户的预订信息,然后设置每个

    标签中显示对应信息,如yuding.yudingShijian获取时间信息,和yuding.CheciId获取车次信息等,其中点击车票信息后将跳转到车票信息界面,如图3.6所示,里面列出车次的路线、时间等信息。

    这里车票的预定状态又分为两种,已受理和未受理状态。

    当用户因某些原因定错票或者放弃订票时可以点击删除订单放弃购票。

    系统将弹出提示框提示是否确定删除。

     

    图3.5会员中心查询个人订单页面

     

    图3.6会员中心查询个人订单车票信息页面

    功能五:

    留言功能,这部分为用户提供了留言的功能,用户可以在这里发表自己的意见和建议,这里的留言用户身份分为两种,一种是已经登录的用户的留言,系统将通过request.liuyanList的方式获取到留言人的信息链表,留言人将会显示通过liuyan.liuyanUser获取到的用户名,在从系统中获取到录入时间显示给用户。

    这个功能用到了一个叫做FCKeditor的编辑插件,是一个可以编辑的文本输入框,通过

    editor>标签引用,在标签中将它的toolbarSet属性设置为Basic,使插件以精简版的模式显示在页面中,如果不设置则显示为默认的版本。

    在用户输入标题和内容并且点击按钮提交留言时,通过submit方式提交表单,表单将数据转发到liuyanAction进行处理,调用里面的liuyanAdd()方法,方法中新建了一个留言对象,将传过来的标题、内容等通过构建对象时生成的方法进行赋值,并通过调用TLiuyanDAO.java类中的save()方法将信息保存到数据库。

    当用户没有登陆进行留言时,系统将获取不到用户名,这时显示给用户的用户名则为空。

    通过这些流程实现了留言功能。

     

    图3.7留言板功能页面

    功能六:

    用户登录,如图3.7所示,用户如果只是需要浏览车票信息公告等则不需要登录,但如果要购买车票要登陆之后才能够进行操作,当用户输入空的用户名和密码在点击登陆后,JS中的检查方法判断用户名密码是否为空,如果为空则返回出错的提示信息,如果不为空则把信息传递到loginService.java的类中对输入的信息和从数据库中得到的数据进行对比,如果相同则返回yes否则返回true,判断的方法在根据返回的信息决定输出错误的提示信息,还是输出成功的提示信息并进行页面的跳转,跳转到登陆成功的界面,如图3.8所示,将存储在sessio

    展开阅读全文
    相关搜索

    当前位置:首页 > 高等教育 > 其它

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

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