航空售票垂直搜索引擎系统的设计与实现 计算机专业实习专题报告_第1页
航空售票垂直搜索引擎系统的设计与实现 计算机专业实习专题报告_第2页
航空售票垂直搜索引擎系统的设计与实现 计算机专业实习专题报告_第3页
航空售票垂直搜索引擎系统的设计与实现 计算机专业实习专题报告_第4页
航空售票垂直搜索引擎系统的设计与实现 计算机专业实习专题报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

实习专题报告题目航空售票垂直搜索引擎系统的设计与实现实习名称专业实习班级学号学生姓名指导教师哈尔滨工程大学2017年8月26日摘要随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用作为计算机应用的一部分使用计算机对机票预订进行管理,具有手工管理所无法比拟的优点。例如检索迅速查找方便可靠性高存储量大保密性好寿命长成本低等这些优点能够极大地提高机票信息管理的效率,也是企业的科学化正规化管理,与世界接轨的重要条件。而基于对象的垂直搜索引擎越来越受到人们的关注,结合这一热门技术,详细论述航空售票垂直搜索引擎系统的设计与实现。该系统基于垂直搜索的思想,采用模板方式的网页抽取技术,提供给用户全面的机票信息。本文针对航空公司的订票实际情况,按照软件工程的结构化设计思想,经过项目的可行性研究和需求分析,概要设计,以及编码实现和调试等步骤设计开发了航空售票垂直搜索引擎系统。并运用数据流图,ER图和数据库逻辑结构,系统结构图,功能结构图,以及程序流程图,对该系统的数据需求、数据库、系统软件结构、业务流程,以及处理过程等进行了分析和设计。本系统前台主要使用JSP作为开发语言,结合JAVASCRIPT和HTML,并使用BOOTSTRAP框架进行制作;后台使用YSQLSERVER作为数据库管理系统,开发环境是ECLIPSE,服务器采用TOMCAT。关键词航空售票;垂直搜索引擎;JSP;YSQLSERVER随着人们生活质量的提升,物质文化需求的提高及各类交通工具也应运而生。现阶段出外旅行及出差的人越来越多,而飞机快速、价低、便捷等优点开始成为越来越多人的选择。然而机票价格受市场因素波动变化非常大,同一航班同等舱位的机票售票价格在不同时段由不同机票代理商售出价差可能高达数百甚至上千元,如何购买到价格更为便宜的机票已成为大家关心的话题。随着网络信息的高速膨胀以及现有通用搜索引擎在信息采集上的滞后性,使得通用搜索引擎难以满足人们对机票价格进行实时比较的需求,人们只得通过查询不同机票代理商和航空公司通过手工方式进行比较,费时又费力。针对这一情况,本课题拟采用垂直搜索技术开发一个机票垂直搜索引擎,采集各大航空网站和机票代理商的机票价格信息汇集到同一数据库中,可大大节省人们的时间和金钱,无疑具有广阔的商业前景和重要的现实意义。1系统需求分析11系统总体需求本文开发的基于垂直搜索引擎的航空售票系统,直接面向客户和航空公司工作人员,分为客户端和后台管理两个部分,具有管理员和用户两个角色,管理员可以登录操作后台管理,而用户则可以在客户端进行相关操作。系统主要分为用户订票和管理员后台管理两部分,订票主要为普通用户提供,普通用户在前台登录后,可以搜索查询航班信息,并且具有订票功能,后台则是针对操作员而言,管理员可以维护航线信息、航班信息、客机信息、客户类型、客户信息、舱位信息以及管理员信息等基本信息。当操作员正确登录后,便可以操作自己拥有权限的业务模块,例如添加、删除、修改航线等信息,操作权的权限由管理员分配,同时管理员可以操作系统中出了数据库的任何模块,而超级管理员还拥有操作数据库的权限。12系统功能需求121管理员功能需求管理员必须登录系统才具有权限操作以下功能1维护航线基本信息增删改查航线基本信息包括每条航线的编号、这条航线起发的城市以及这条航线要到的目的地,其中航线的定义为从出发城市到目的城市之间的线路,两个城市之间的往返为两个航线。2维护航班信息增删改查航班信息包括航班编号,这趟航班出发的日期及时间,到达目的地的日期及时间等。航班的定义为航线中的班次信息。航线与航班之间的关系是一对多关系,一个航线对应着多个航班,不同的时间对应的航班号是不相同的,而一个航班对应的只能是一个航线。航空公司工作人员可以对一定时间内的航班信息进行维护,航班编号的规则为航线号加上对应的航线的该日期的航班序号。3维护客机信息增删改查维护客机信息要求管理员能够对客机自身的一些数据进行维护,例如客机购买的日期、客机中座位的类型及数量等等。4维护舱位信息增删改查维护舱位就是对客机舱位的一些信息进行管理,例如对舱位的等级信息等进行维护。舱位等级分为经济舱、公务舱和头等舱三种类型,不同的舱位的价格不一样。5维护客户类型信息增删改查维护客户类型信息就是对客户类型的一些基本信息进行管理,例如客户具有什么样的等级等。客户类型主要分为普通客户、内部人员、VIP客户,超级客户等类型,不同的类型对应的客户在购买机票时的折扣率不相同,折扣按以上顺序依次增加。6维护客户信息增删改查维护客户信息就是对客户的基本信息进行管理,例如客户的一些常用信息、姓名、证件号码等。每个客户属于一个客户类型,一个客户类型对应这多个客户,客户与客户类型之间是多对一的关系,当用户注册后,由管理员审核其信息,默认信誉度为100并根据公司规则制度赋予客户相应客户类型。7维护订单信息增改查订单信息是不可删除的,所以,订单信息只能进行根据条件来查询,或者进行对应的修改。8维护其他人员基本信息增删改查其他人员基本信息包括账号、密码等信息。122客户功能需求客户在必须在成功注册后,才可以在客户端登录系统,成功登录系统后,具有权限操作所有的功能,登录客户才会具有权限操作的功能如下1预订机票,客户可以预订航班日期当前日期之后的一个月内的机票。2查询订票信息,客户成功订票以后,可以根据订票号、身份证号、航班号、订票日期、航班日期、出发地、目的地查询票单信息。3跟踪订票处理信息,客户可以通过客户端查询处订票信息,并且系统可以即时的向用户提供订票处理信息,客户订票处理主要分未取票、己取票、已取消三种状态。4机票改签,客户可以查询航班日期大于登录系统日期的订票信息,并且可以改签为航班日期大于当前日期的在有效期内的机票。5机票退订,客户可以在机票的有效期之内退订机票,退掉机票之后,系统相应地扣除客户信誉度,如果客户信誉度低至50,则系统默认该客户不可再预订机票。123游客功能需求在没有登录的情况下,游客能够完成注册新账号、在线咨询、浏览公司简介、使用帮助、查看注意事项、查询航班信息等。根据航班号、航班日期、出发地、目的地查询航班信息,系统根据条件查询出符合条件的航班信息,并且提供订票的接口于客户。13系统安全性需求本系统是面向客户和航空公司工作人员的基于某航空信息的机票在线销售系统,系统除了保证用户所作的一切操作、所看到的一切数据满足其所拥有的权限外,还应保证用户的密码等重要信息不管是在传输中还是在数据库中应以密文的形式存在,选用的加密算法应是不可逆的加密算法。2系统总体设计21系统模块设计该系统功能模块从整体上主要由前台用户预订机票和管理员后台进行管理维护组成。前台客户端功能组成包括航班查询模块、机票预定模块、机票改签模块、查询订单模块、客户登陆/注册模块等。后台管理具体功能组成包括1航线信息管理,分为添加航线、修改航线和查询航线三个子模块;2航班信息管理,分为查询航班、修改航班、添加航班三个子模块;3客机信息管理,分为查询客机信息,查询客机信息,修改客机信息三个子模块;4舱位等级管理,分为查询舱位、修改舱位、添加舱位三个子模块;5客户类型管理,分为查询客户类型,修改客户类型、添加客户类型三个子模块;6客户的信息的管理,分为查询客户具有的信息、恢复信誉度;7管理员模块,分为添加管理员、查询管理员、删除管理员;8订单信息管理模块,分为查询订票、领取机票和取消订票三个子模块;22业务流程图图21系统业务流程图23数据库设计231数据库概念设计2311客机实体属性图图22客机实体属性图2312客户实体属性图图23客户实体属性图2313航班实体属性图图24航班实体属性图2314机票实体属性图图25机票实体属性图232数据库逻辑结构设计2321管理员信息表该表用于存储管理员的登录信息,主要包括以下字段管理员用户名、密码、管理员权限;表21管理员信息表列名数据类型长度说明ADMINUSERVARCHAR50管理员用户名PASSWORDVARCHAR50密码RANKVARCHAR50权限2322航线信息表主要包含以下字段航班编号、出发日期、出发城市、到达城市、起飞时间、到达时间、经济舱价格、商务舱价格、头等舱价格、经济舱数量、商务舱数量、头等舱数量、燃油费、客机编号;表22航线信息表列名数据类型长度说明AIRLINEIDVARCHAR50定义航线唯一编号AIRLINEDATVARCHAR50出发日期CITYLEAVVARCHAR50出发城市CITYREACHVARCHAR50到达城市TIMELEAVEVARCHAR50起飞时间TIMEREACHVARCHAR50到达时间JINGJIPRICEVARCHAR50经济舱价格GONGWUPRICEVARCHAR50商务舱价格TOUDENGPRICEVARCHAR50头等舱价格JINGJILEFTINT经济舱数量GONGWULEFTINT商务舱数量TOUDENGLEFTINT头等舱数量JFUELVARCHAR50燃油费PLANEIDVARCHAR50客机编号LOGINMARKINT登陆获得积分数BOOKMARKINT订票获得积分数2323会员积分表用于存储会员不同操作增加积分的表,主要包括以下字段登录积分、订票积分;表23会员积分表列名数据类型长度说明LOGINMARKINT登陆获得积分数BOOKMARKINT订票获得积分数2324订单信息表该表用于存储订单信息表24订单表列名数据类型约束条件说明D_IDBIGINT主键订单号D_STATEVARCHAR非空订单状态D_TIMESTYPETIMESTAMP非空下单时间D_REALCOSTINT非空实际票价D_STATIONVARCHAR非空下单地点D_USERIDVARCHAR非空下单用户PNAMEVARCHAR非空乘客姓名IDNUMVARCHAR非空乘客身份证号IT_FLIGHTVARCHAR非空航班号IT_AIRLINESVARCHAR非空航空公司IT_FLIGHT_DATE_STARTDATETIME非空始发时间IT_PROVENANCEVARCHAR非空始发地IT_DESTINATIONVARCHAR非空目的地MODELVARCHAR非空机舱类型2325客机信息表用于存储客机信息,主要包括以下字段客机编号、经济舱数量、商务舱数量、头等舱数量;表25客机信息表列名数据类型长度说明PLANEIDVARCHAR50客机编号JINGJINUMINT经济舱数量GONGWUNUMINT商务舱数量TONDENGNUMINT头等舱数量2326会员信息表用于存储会员信息,主要包括以下字段姓名、身份证号、性别、出生日期、地址、邮编、联系电话、邮箱、用户名、密码、积分;表26会员信息表列名数据类型长度说明REALNAMEVARCHAR50姓名IDCARDNUMVARCHAR50身份证号SEXVARCHAR50性别BIRTHDAYVARCHAR50出生日期ADDRESSVARCHAR50地址POSTVARCHAR50邮编PHONENUMVARCHAR50联系电话EMAILVARCHAR50邮箱USERNAMEVARCHAR50用户名PASSWORDVARCHAR50密码MARKINT积分3系统实现31前台客户端的实现311客户端主页面本页面主要是在右边部分为客户提供一个简单的关于客户使用本系统的一些操作的介绍。312客户注册页面客户在此页面输入相应信息,验证通过后即可注册成为本系统用户。313客户登录页面此页面主要是为客户提供登录系统的接口,客户在这个页面输入对应的数据后,然后登录,假若输入的数据和数据库中的数据匹配,那么能够成功登录,若登录失败,系统会提示客户错误信息,帮助客户正确使用本系统。314航班查询页面航班查询页面用以收集航班搜索条件。315航班信息显示页面此页面用以显示符合搜索条件的航班信息,并且为客户提供预定机票的接口。如果航班没有剩余座位,则点击对应订票链接时,提示客户该航班没有剩余座位。316预订机票页面当用户在航班信息所示的页面点击订票链接时,判断是否还有剩余座位,如有则跳到预定机票的页面收集订单信息,否则提示用户该航班没31有剩余座位。317机票预订成功提示页面预订机票成功后,跳转到此页面,用以向用户反馈订单信息。318票单信息显示页面当客户成功登录系统后,点击导航菜单条中的机票改签,系统将显示客户所订的航班日期大于登录系统日期的所有订单信息。图31订单管理页面319机票改签页面在票单信息页面中,点击改签链接,页面转向为机票改签页面,此页面用以收集机票的修改信息。3110订票状态查询页面客户成功登录系统后,在导航条点击订单管理,即可转向到订单状态查询页面,默认显示客户所有订单信息,客户可以根据需要输入查询条件来搜索订单信息。3111客户支付在本系统中,客户支付部分,目前本系统只是有支付的流程,而无实际支付操作;进行支付的操作单纯实现对订单状态的更改,以便测试系统功能实现程度。32后台管理端的实现321管理员登录页在管理员登录页面,系统会随机生成一个四个字符的字符串,并且以图片的形式传给前台页面,形成验证码,用户在此页输入正确的数据后才能成功登录。322查询航班页面此页面主要是用以查询并且显示航班信息,默认显示所有的航班信息,管理员可在搜索面板中输入条件以查询航班,在页面中,系统同时也会为每个航班信息提供修改航班和添加航班的接口,其中添加航班,指的是为该航班所对应的航线添加航班信息,修改航班则是修改对应的航班具体信息航班编号不可修改。323添加航班页面添加航班有两种途径,一种是先查找航线,然后点击航线信息后面的添加航班链接,另一种是先查找航班信息,然后根据航班信息为其所属航线添加航班。324修改航班页面管理员在此页面修改航班信息,管理员可从图617所示的页面中,点击修改航班链接,则可进入相应的航班信息修改页面。325订单管理页面管理员可以根据客户提供的订单信息或者是客户信息查找相应的订单信息,然后处理订单信息,在此页面中,对订单的操作主要有两种,即领取机票和取消订票。4系统测试41测试方法本文对基于某航空信息的机票在线销售系统测试时,根据系统的功能设计了不同的测试用例来对每一个功能进行测试,采用黑盒测试的思想,完成了对基于某航空信息的机票在线销售系统的功能测试,使系统能够正常运行提供服务。42系统功能测试测试用例根据系统需求进行设计,对系统要实现的功能进行测试,在此过程中发现和解决了分页查询航班信息的一个逻辑问题,当根据某些条件查询出符合条件的数据之后,点击分页链接,则查询默认条件下查询所有的航班信息的对应页信息,经分析,这种情况主要是因为点击分页链接之后,搜索条件全都为空,解决这个问题,只需要确保在点击分页链接重新查询航班信息时,搜索条件仍然为上一次的内容,因此,在分页链接后面添加参数,将整个搜索FORM对象的内容发送到对应ACTION,然后在ACTION中重新将其组成搜索条件对象,传递到SERVICE层,接着在SERVICE层调用DAO层,来穷举分析搜索条件,从而找出符合条件的航班信息,最后由ACTION将数据信息发送到VIEW层显示给用户。43系统性能测试为了满足需求分析中所提出的系统性能要求,有必要对系统性能进行测试。由于系统主要是以查询业务为主,查询所涉及到的表的数量以及数据量比较大,在系统设计中,对查询是以分页的形式实现。分页方式目前主要有两种技术,一种先将所有信息从数据库取出,放于缓存中,然后再依据逻辑判断分页显示,这种方式,只需要向数据库发送一次请求,只有第一次耗时较长;另一种是每一次都是查询数据中符合条件的一部分数据,如需查询其余数据,则需要重新向数据库发送请求,这种方式需要多次向数据库发送请求。经过测试分析,第二种方式适合基于某航空信息的机票在线销售系统,因为系统查询数据都是以固定数量显示,而且依据精确查询条件的方式,可以减少符合条件的数据量,从而相对来说限制了向数据库发送的请求次数。5结论本文严格按照软件工程的思想和流程完成设计和报告工作,下面主要从所做的工作对本文进行总结。本文详细论述了基于垂直搜索引擎的航空售票系统相关知识以及所用到的技术及其管理系统。同时在系统的具体设计与具体实现过程中充分考虑安全技术和数据库技术等关键技术,在这些基础上主要完成了以下工作1在系统需求分析中,主要对系统应该完成的功能进行分析,包括管理员功能需求、客户功能需求、游客功能需求、用户管理功能需求和其他功能需求,同时给出了系统性能需求和系统安全性需求。在系统功能分析中,详细分析了系统的功能组织及各功能。2本文在对系统进行具体设计和具体实现中,包括四个方面的设计与实现。第一,完成了系统主界面和其它界面的设计与实现;第二,从系统功能模块设计出发完成了系统的功能设计第三,从数据库的设计原则、数据库选型和数据库表的设计三个方面完成了对数据库的详细设计;第四,在安全性设计上,通过对用户信息以加密传输和在数据库保存的方式防止恶意入侵系统,以实现系统安全型的设计。3在系统的测试中,通过对系统测试方法的分析,选定了对系统功能测试的方法,制定了测试计划,完成了系统的测试工作。然而虽然本系统已具备基本机票

温馨提示

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

最新文档

评论

0/150

提交评论