版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计说明书火车票网上预约订购系统学生姓名:学号:计算机与控制工程学院学院:计算机与控制工程学院网络工程专业:网络工程指导教师:2016年6月火车票网上预约订购系统摘要火车票网上预约订购系统是一款联系人们和车票官方的管理软件。通过系统的实现方便人们的日常出行,为人们提供便利条件。本系统使用JAVA语言开发,使用Myeclipse作为开发工具,同时使用SQLServer数据库进行数据的存储,并且使用SSH框架提高了功能实现效率,增加了系统的可维护性。主要功能分为两大模块,①管理员模块;②用户模块。其中管理员模块主要实现的功能有:车次管理、新闻管理、公告管理、留言管理及会员信息;用户模块实现的主要功能有:查询功能、车票预定功能以及个人信息的管理。本系统经过测试,所有功能均到达预计功能。关键词:网上订票,JAVA,Myeclipse,SSH,SQLServerOrdertrainticketsonlinebookingsystemAbstractOrdertrainticketsonlinebookingsystemisasoftwareofcontactpeopleandtheofficialmanagement.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目录TOC\o"1-3"\h\u34051需求分析1207061.1问题定义 1223551.2系统需求 195671.2.1管理员功能模块:1226071.2.2普通用户功能模块:2257781.3系统功能图268161.4可行性分析 2183041.5本章小结3299702概念结构设计4120892.1系统根本流程4230062.2数据表及E-R图 4106422.2.1数据表 4314232.2.2E-R图 5309242.2.3数据库表的设计 5211502.3本章小结838853详细设计9270393.1程序主框架 980293.2启动界面937343.3用户模块10124173.3.1系统首页 10228323.3.2免费注册 10236203.3.3会员功能模块 1187853.4管理员模块17200283.4.1管理员登录 17195763.4.2根本操作 1859523.4.3会员管理 19174453.4.4新闻公共管理 20155343.4.5车次管理 2283453.4.6订单管理 22273203.5本章小结23203264测试与调试24107944.1测试与调试概述24188544.2程序功能测试24156874.2.1测试主页访问是否成功 2420094.2.2测试用户注册功能 2493924.2.3测试管理员与用户登录功能 24209174.2.4测试订购车票功能与车次管理功能 2452404.2.5测试管理员管理功能 25126514.3本章小结2589065结论2620021参考文献 271230致谢 281需求分析了解火车票网上预约订购系统的具体实现流程,以及每个流程所要实现的功能和操作,对其进行详细分析和总结,明确得出完成系统所需要的概念。本系统主要解决网上购票和订票等功能,满足不同用户在不同时间提出的不同需求。同时需要系统能够高效平安可靠的为用户效劳,同时还要解决负载问题。1.1问题定义首先,系统能够平安流畅的运行,为用户提供所需要的效劳。用户可以在网上根据自身需求去订购车票,用户输入的姓名、身份证号、出发时间、出发地点及目的地将被传入到数据库中,然后根据要求为旅客安排出行车次,旅客可以在出发前将票取出,或者进行退票的操作。1.2系统需求这款管理系统主要是用于火车票网上订票。根据使用者的需求,可以实现对系统中对应的信息进行增删改查等操作。并建立以下2个大模块:1.2.1管理员功能模块:(1)车次管理功能模块:管理员通过系统将列车的车次信息、经过的站点、时间、票价等信息录入系统并存入数据库中,当用户在系统中进行查询数据时,系统将查询的数据结果返回给用户,实现用户和系统之间的交互。(2)车票预定管理功能模块:当用户登陆后对车票进行购置和预定,管理员要通过系统对这些操作进行管理。(3)新闻管理功能模块:新闻模块主要向对旅客展示新闻信息,管理员通过后台系统对数据库中的信息进行修改、增加和删除等操作。(4)公告管理功能模块:公告模块会提示旅客列车信息,到站时间、是否晚点等,管理员通过系统后台对这些信息进行修改等操作,防止旅客出现晚点和在车站等待时间过长等情况。(5)留言管理功能模块:旅客在使用系统过程中对系统有什么建议或者意见可以通过该模块进行提交,管理员可以对这些信息进行采集,并做出相应的改良,提高旅客的满意度,为旅客提供更好的效劳。1.2.2普通用户功能模块:(1)查询功能模块:旅客可以直接登陆系统进行余票的查询、新闻的查询等,余票查询条件分为按照时间查询和按照站点查询,并将查询结果返回给用户。车票管理功能模块:根据旅客自身的需求购置和预定车票,在一定时间后预定的车票如果没有确定订单那么会被取消。个人信息管理功能模块:当旅客想要购置车票、预订车票还有留言时那么需要进行系统注册,并将结果存储在数据库中,登陆时进行验证,验证通过后才可以实现以上操作。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管理员表设计属性名存储类型属性值能否为空属性值含义userIDint否管理员ID〔主键〕userNamevarchar(50)否管理员名userPwvarchar(50)否密码表2.2是用户表的设计,用于存储用户的注册信息,当用户通过系统注册时,注册的信息将被录入到这张表中,当用户对自己的信息进行修改时,将对应改变表中的数据。表2.2用户表设计属性名存储类型属性值能否为空属性值含义user_idint否用户ID〔主键〕user_namevarchar(50)否用户姓名user_pwvarchar(50)否用户密码user_realnamevarchar(50)否真实姓名user_addressvarchar(50)否地址user_sexvarchar(50)是性别user_telvarchar(50)否user_emailvarchar(50)是邮箱user_qqvarchar(50)是QQ表2.3是车次表的设计,用于存储管理员录入的车次信息,当用户查询车次信息时,系统将通过内部方法将这张表中的数据呈现给用户;管理员对车次信息进行修改时,将修改这张表中的对应信息。表2.3车次表设计属性名存储类型属性值能否为空属性值含义idint否车次ID〔主键〕luxianvarchar(50)否路线piaoshijianvarchar(50)否日期startshijianvarchar(50)否开车时间endshijianvarchar(50)否到站时间piaojiaint否票价piaoshuint否票数表2.4是公告表的设计,用于存储管理员在后台录入的公告信息,将通过主键修改表中的对应信息。用户在首页看到的公告信息是系统通过内部方法将这张表中的信息放在jsp页面中。表2.4公告表设计属性名存储类型属性值能否为空属性值含义gonggao_idint否公告ID(主键)gonggao_titlevarchar(50)否标题gonggao_contentvarchar(8000)否发布内容gonggao_datevarchar(50)否发布时间gonggao_fabuzhevarchar(255)否发布人表2.5是留言表的设计,用于存储用户在留言界面的留言内容,当管理员对留言进行查看和管理时,这张表中的内容将在页面上呈献给管理员。表2.5留言表设计属性名存储类型属性值能否为空属性值含义liuyan_idint否留言IDliuyan_titlevarchar(50)否留言标题liuyan_contentvarchar(5000)是留言内容liuyan_datedate是留言日期liuyan_uservarchar(50)是留言人表2.6是图片新闻表的设计,用于存储管理员录入的新闻信息,用户在首页中查看到的新闻也是这张表中的信息,当管理员在后台系统中对图片新闻进行修改时,将会修改这张表中的对应信息。表2.6图片新闻表设计属性名存储类型属性值能否为空属性值含义picNews_idint否新闻IDpicNews_titlevarchar(50)是标题picNews_contentvarchar(5000)是内容picNews_picvarchar(50)是图片名表2.7是用户预定车票表的设计,用户成功订购车票后,车次的根本信息,用户的根本信息等都会存储在这张表中。当管理员修改用户的预定车票信息时,将通过主键修改这张表中的对应信息。表2.7预定表设计属性名存储类型属性值能否为空属性值含义yvding_idint否预定号User_idint否用户IDCheci_idint否车次IDyvding_shumuint否预定数目yvding_jinevarchar(50)否预定金额zhifufangshivarchar(50)否支付方式yvding_shijiandate否预定时间yvding_zhuangtaiint否预定状态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三个页面组成,呈现在用户面前的主框架均由这三个页面通过<jsp:include>标签链接页面组合而成。里面的菜单栏是一个整体的<div>,里面的每一个小的选项都是一个<li>标签,在<li>的标签里面嵌套了一个<a>标签的超链接,并且在thisclass的JS中设置样式和function方法来实现页面的跳转。第二局部主体是一个<div>,在<div>中嵌套的一个<table>,最后在里面放入<label>和<input>等标签。第三局部精彩图文,向用户显示最新的新闻信息,这局部菜单条和图片显示分别是两个<div>标签,里面嵌套的四个<td>分别存放从数据库读出来的图片信息,图片下方显示新闻的标题。第四局部车次信息,也是两个大的<div>框,里面四个<tr>标签,里面分别嵌套7个<td>标签,用于显示车次的根本信息。第五局部用户登录,是有<div>里面使用<input>和<td>等标签构成界面,相比照拟简单。第六局部网站公告,用于显示当前车次晚点信息等情况,使旅客可以比拟方便的调整自己的行程。最后一局部网站日历表,这局部有一个单独的jsp页面实现,通过Calendar这个类获取到当前的年、月、日,在页面加载之后通过onload=”showTime()”方法将日历信息显示给用户。图3.1启动界面3.3用户模块3.3.1系统首页这局部是一个<a>标签,用户点击后系统将自动返回到启动的初始界面。3.3.2免费注册这局部将免费注册嵌套的<a>标签中,点击后将跳转到图3.2所显示的注册界面,注册界面收集用户的注册信息,用户将信息添加之后,点击确定按钮,表单使用post方法利用action将数据提交到userReg.action这个类中,在这个类中创立了一个新的user对象,通过user提供的set方法将传进来的值存储到新建的对象中,在里面调用userDAO.save()方法将数据保存到数据库中,而userDAO包中的save()方法中使用getHibernateTemlate().save()方法将信息存储到数据库中,在userAction中返回一个SuccessAdd,这时,在Struts.xml中有一个全局的<golbal-result>配置,返回的SuccessAdd与<result>中的匹配的值并且返回后面的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方法获取到用户的预订信息,然后设置每个<td>标签中显示对应信息,如yuding.yudingShijian获取时间信息,和yuding.CheciId获取车次信息等,其中点击车票信息后将跳转到车票信息界面,如图3.6所示,里面列出车次的路线、时间等信息。这里车票的预定状态又分为两种,已受理和未受理状态。当用户因某些原因定错票或者放弃订票时可以点击删除订单放弃购票。系统将弹出提示框提示是否确定删除。图3.5会员中心查询个人订单页面图3.6会员中心查询个人订单车票信息页面功能五:留言功能,这局部为用户提供了留言的功能,用户可以在这里发表自己的意见和建议,这里的留言用户身份分为两种,一种是已经登录的用户的留言,系统将通过request.liuyanList的方式获取到留言人的信息链表,留言人将会显示通过liuyan.liuyanUser获取到的用户名,在从系统中获取到录入时间显示给用户。这个功能用到了一个叫做FCKeditor的编辑插件,是一个可以编辑的文本输入框,通过<FCK:editor>标签引用,在标签中将它的toolbarSet属性设置为Basic,使插件以精简版的模式显示在页面中,如果不设置那么显示为默认的版本。在用户输入标题和内容并且点击按钮提交留言时,通过submit方式提交表单,表单将数据转发到liuyanAction进行处理,调用里面的liuyanAdd()方法,方法中新建了一个留言对象,将传过来的标题、内容等通过构建对象时生成的方法进行赋值,并通过调用TLiuyanDAO.java类中的save()方法将信息保存到数据库。当用户没有登陆进行留言时,系统将获取不到用户名,这时显示给用户的用户名那么为空。通过这些流程实现了留言功能。图3.7留言板功能页面功能六:用户登录,如图3.7所示,用户如果只是需要浏览车票信息公告等那么不需要登录,但如果要购置车票要登陆之后才能够进行操作,当用户输入空的用户名和密码在点击登陆后,JS中的检查方法判断用户名密码是否为空,如果为空那么返回出错的提示信息,如果不为空那么把信息传递到loginService.java的类中对输入的信息和从数据库中得到的数据进行比照,如果相同那么返回yes否那么返回true,判断的方法在根据返回的信息决定输出错误的提示信息,还是输出成功的提示信息并进行页面的跳转,跳转到登陆成功的界面,如图3.8所示,将存储在session对象中的用户名显示出来,提示用户现在的登录状态。点击退出后系统将调用remove()方法去除掉用户的登录信息。实现用户的登录和退出功能。图3.7用户登录功能页面图3.8用户登录成功功能页面功能七:网站公告功能,如图3.9所示,这个局部将显示公告信息,写在固定的incLeft.jsp页面中,首先通过gonggaoDAO下面的方法获取到数据库中的公告信息,再将信息传递到action类中进行处理,最后通过页面中的<s:action>标签将返回的数据显示在页面中,如图3.10所示,里面将显示公告标题、公揭发布时间、以及公告内容。图3.9公告页面图3.10公告信息页面3.4管理员模块系统管理员模块主要包括六大类功能,管理员登录、根本操作、会员管理、新闻管理、车次管理、订单管理。其中根本操作包括对管理员密码的修改以及增加管理员数量;会员管理包括对会员的增加和删除,以及对新闻信息的管理操作;新闻管理功能,包括对图片新闻以及公告的管理操作;车次管理功能,包括对车次信息的编辑,修改等操作;订单管理功能,对所有用户的订单进行管理,受理或者删除相关信息。所有功能组成了管理员模块的功能。3.4.1管理员登录点击用户界面最下方的管理员登录,将跳转到如图3.11所示的管理员登陆界面,与用户登陆界面相似,当用户输入的用户名或者密码为空时,点击登陆后将提示错误信息,当输入用户名和密码后如果不为空,那么把信息传递到loginService.java的类中对输入的信息和从数据库中得到的数据进行比照,如果相同那么返回yes否那么返回true,判断的方法在根据返回的信息决定输出错误的提示信息,还是输出成功的提示信息并进行页面的跳转,跳转到登陆成功的界面,如图3.12所示,将存储在session对象中的用户名显示出来,提示用户现在的登录状态。点击注销退出后系统将调用remove()方法去除掉用户的登录信息。实现管理员的登录和退出功能。图3.11管理员登陆界面图3.12管理员登陆成功界面3.4.2根本操作根本操作功能模块包括密码修改和管理员维护两个功能,如图3.13和图3.14所示。第一个功能管理员密码修改,系统自动获取到登陆的用户名,并将其属性设置为readonly属性,只允许读取不能够被用户修改。当用户输入的信息为空并点击修改按钮时,会提示“原始密码不正确”、“新密码不能为空”和“两次密码输入不一致”的提示信息,当原密码和用户输入的密码相匹配的时候,系统将获取到用户输入的新密码,并将密码存储到数据库中。第二个功能管理员维护,在这里管理员可以添加新的管理员以及删除掉不工作的管理员,添加管理员界面如图3.15所示,简单的来说就相当于一个简洁的注册功能,只需要输入新的用户名和密码,系统会将新输入的信息获取并且添加到数据库中进行保存,新添加的管理员就可以对整个系统进行管理。图3.13管理员修改密码界面图3.14管理员维护界面图3.15管理员添加界面3.4.3会员管理会员管理模块由会员管理和留言管理两个功能组成,如图3.16和图3.17所示。第一个功能会员管理,也就是管理员对注册用户的管理操作,系统将数据库中的值通过<s:iterator>标签和里面的value属性使用request.userList的方法获取到数据栈中,<s:iterator>标签可以遍历数据栈中的每一个值,并通过<s:property>标签将里面的值输出到jsp页面中,将结果呈现给用户,当管理员点击删除时将触发删除的方法对用回进行删除,删除前先获取到用户的ID,并将ID作为参数传递到方法中,调用action中的删除方法通过传过来的ID作为删除的条件将整条数据删除,到达删除整个用户的目的。第二个功能留言管理,在上面提到过还是通过<s:iterator>标签获取到数据库中的值存放在数据栈中,并使用<s:property>将数据进行格式化的输出,系统将从值中获取到留言人的用户名、留言时间、标题、内容等信息,并显示在jsp页面对应的表格中,前面介绍过,用户是不用登录就可以在系统的留言功能中留言的,在用户没登陆系统时,在系统的session中是获取不到用户的用户名的,所以没有登录的用户留言在显示的时候用户名是不存在的。图3.16会员管理界面图3.17留言管理界面3.4.4新闻公共管理新闻管理由图片新闻和公告管理两个功能组成,如图3.18和图3.19所示。第一个功能图片新闻模块,有三个小的功能组成。如图3.20添加新闻,添加新闻时输入新闻标题,选择要上传的图片,输入要说明的新闻内容。点击提交后,使用submit提交至表单,表单中设置了picNewAdd.action的提交路径,我们在struts.xml的配置文件中找到对应的方法,这里又将数据传送到picNewAction中进行处理,调用里面的picNewsAdd()方法将图片上传到数据库。使用<s:iterator>和<s:property>将信息显示在jsp页面上;第二个小功能,删除图片新闻,这里点击删除后,先获取到新闻的ID,并将ID作为参数传递到方法中将这条新闻数据在数据库中删除。第三局部查看内容,点击查看内容后,将会获取新闻ID作为参数传递到方法中将新闻的内容信息显示在一个新的窗口中。第二个功能公告管理模块,这里也是分为添加公告,如图3.20所示,删除公告、查看公告、详细内容三个局部,实现方法和图片新闻功能模块一致。添加公告后将在数据库中自动生成一个公告ID,公告ID作为表示一条新闻的唯一主键,之后在查看公告详细内容以及删除公告内容时都会将公告ID作为参数,确保删除和查看数据时产生数据冲突。图3.18图片新闻界面图3.19公告管理界面图3.20添加新闻和公告界面3.4.5车次管理车次管理由车次信息和添加车次,如图3.21所示,两局部组成,其中第一局部点击车次信息过后将会把当前存在的所有车次,车票信息,时间,票价等信息从数据库中获取到显示在jsp页面当中,与管理员交互,让管理员一目了然的看清所有车次的信息。同时管理员可以修改当前已存在车次的信息,修改时先获取到当前修改的车次ID,让系统知道要修改的是哪一条数据,修改后调用action中的chiciEdit()方法将修改正后的信息放到数据库中完成车次信息的修改。管理员还可以对车次进行删除,这个也要依赖于获取到车次的唯一标识车次ID,通过这个在数据库中删除整条数据,到达删除整个车次的效果。在添加车次时,管理员要输入车次的路线、日期等信息,点击提交后数据库将自动生成一个唯一的车次ID,最后存储到数据库中,在前台页面中输出,显示在jsp页面中,方便用户查询。图3.21添加车次界面3.4.6订单管理订单管理,如图3.21所示,主要完成受理用户的订票信息,这里的状态有两种,一种是已受理状态1,另一种是未受理状态0。管理员可以删除订单,先获取到订单的编号,当点击删除后先让用户确定是否删除,当用户确定后将订单ID以参数的方式传到删除方法中,删除整个订单信息。当点击受理后,将获取到的订单号作为参数传到方法中,将未受理的状态0,通过setyudingzhuangtai()方法改变成已受理状态1,并将这个信息传送到数据库中,用户端也可以在数据库中获取到购票状态,完成购票。里面的用户信息和车次信息里面分别存储着预定的userID和预定的checiID,点击后将通过这两个参数从数据库中获取到用户详细信息和车次的详细信息。图3.21订单管理界面3.5本章小结本章主要整个工程做了详细的设计,对管理员和用户两个大的模块做了详细的设计和介绍,包括实现每个功能的函数方法,整个工程的框架实现,每个子功能的实现流程,从输入到录入数据库,再从数据库中获取显示在jsp页面中的详细过程。4测试与调试4.1测试与调试概述程序测试是说在程序中发现代码的错误,一一找到程序中的每个运行问题,逐一进行解决。程序的测试和调试对于一个工程的开发十分重要,在每进行一个小的功能编写后,就进行代码的测试,测试通过后在进行下一个功能模块的实现,这样做完之后,在最后进行整个程序调试时就会变得特别轻松。4.2程序功能测试测试主页访问是否成功翻开浏览器,在地址栏中输入://localhost:8080/chipiao/qiantai/default.jsp按下回车键,即会跳转到系统默认界面,表示登录主页测试成功。测试用户注册功能在首页点击“注册”或者“免费注册”后,系统将会跳转到用户注册界面,用户输入注册信息后,点击“确定”按钮后,系统弹出“操作成功,本窗口将于3秒后自动关闭”的提示信息,并在数据库中可以查询到用户的注册信息,表示用户注册成功。测试管理员与用户登录功能进入到用户与管理员登陆界面,输入已注册用户信息,点击登陆后,如果成功跳转,那么表示用户登陆成功;在输入错误的信息时,系统将会提示错误信息,表示整个用户登录功能能够正常使用。管理员登录测试与用户登录测试相同。测试订购车票功能与车次管理功能用户点击自己所需要预定的车票,系统挑战到车票预定界面,选择支付方式点击确定后,在自己的订单信息中如果查询到车票信息〔未受理状态〕,那么表示订票成功,这时登录管理员,在车票受理中,点击受理车票,弹出“受理成功”的提示信息,并且在用户的订单信息中,车票状态变为已受理,那么表示车票的订购功能能够正常使用;管理员在添加车次过后,在用户界面可以查询到新增加的车次,删除车次信息后,查询不到对应的车次信息。那么表示车次添加功能和删除功能能够实现并使用。测试管理员管理功能管理员登录后,对新闻功能进行管理,在添加新闻过后,用户可以在初始界面查看到新添加的新闻信息,点击后可以进行预览,说明新闻管理功能可以正常使用,其他留言、公告等信息的管理和新闻测试方式一致,测试后,均可正常运行。4.3本章小结本章主要对整个工程的功能进行测试和调试,发现其中的不稳定因素和存在异常的功能,并想出方法进行解决,使工程能够流畅运行。降低了程序在真正使用时发生错误的可能性。5结论经过一个学期对系统的设计和代码的编写完成了这个工程。本系统由用户模块和管理员模块两个大的功能模块组成,每个模块中包括多种子模块,实现子功能。整个系统使用SSH框架进行开发,使用Myeclicpse14作为开发工具,后台数据库使用SQLServer2014作为数据库存储数据,使用Tomcat7.x搭建Web应用效劳器,提供系统运行环境和页面的访问功能。系统的操作相对简单,根本功能完全。本系统实现了以下功能:通过在浏览器地址栏中输入://localhost:8080/chipiao/qiantai/default.jsp可以访问系统的主页面,在主页面用户可以实现用户的注册、登录、修改信息、查看新闻、车票预定、车票查询等功能;管理员可以在后台对车次信息修改添加
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西省2025-2026学年高一下学期语文学科期末质量检测试题(含答案)
- 2026重庆市大渡口区事业单位面向应届毕业教育部直属师范大学公费师范生考核招聘5人笔试参考题库及答案详解
- 2026年新疆维吾尔自治区乌鲁木齐市住房和城乡建设局人员招聘笔试参考试题及答案详解
- 2026重庆八中宏帆中学教育集团招聘18人考试备考题库及答案详解
- (2026)新生儿低血糖的护理课件
- 人工智能在监管中的应用边界-第26篇
- 2026秋季广西北海市银海区第一小学学期招聘教学人员考试参考题库及答案详解
- 2026政协隆昌市委员会办公室招聘2人(四川)考试模拟试题及答案详解
- 2026浙江绍兴漓铁综合开发经营有限公司辅助用工人员招聘7人考试备考题库及答案详解
- 人工智能在智能营销中的应用-第57篇
- 电站网络安全知识培训课件
- 幽门螺杆菌课件
- 双重预防机制题库及答案
- 元代文学-课件
- 特殊感染手术术后处理流程
- 公司清欠工作管理办法
- 职业妆容技巧培训课件
- DB52T 873-2018 大曲酱香型白酒生产技术规范
- 中级消防设施操作员实操技能指导手册
- 水平三田径大单元18课时教案
- 民用建筑电线电缆防火技术规程DBJ-T 15-226-2021
评论
0/150
提交评论