基于java的电影订票网站的设计实现_第1页
基于java的电影订票网站的设计实现_第2页
基于java的电影订票网站的设计实现_第3页
基于java的电影订票网站的设计实现_第4页
基于java的电影订票网站的设计实现_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

基于JAVA的电影订票网站的设计实现摘要国民经济快速发展,人们对生活的要求越来越高,娱乐方式越来越多样化,对服务的快捷、便利性要求也越来越高,从而他们对电影院行业的建设与管理提出了更高的要求。由于电影数量与电影种类不断增加,电影事业不断发展,中心影城的管理难度也越来越大。然而传统的售票方式存在着很多方面的不足,比如实时差、交易时间过长、运营成本高、信息不共享等。为适应和推动电影行业的发展,各电影院公司和部门开始广泛采用计算机管理系统,推出网上电影票售票服务,大大减轻了订票、售票、检票、调度、票款管理等部门工作人员的劳动强度,提高了各部门的工作效率,而且能够在很大程度上减少顾客排队购票的时间和由此而带给顾客的疲劳,为广大顾客提供了更加快捷、优质、有序的服务,提高了中心影城的服务水平,也逐步树立了企业形象。本次毕业设计的内容是设计并且实现一个基于WEB技术的电影票订票网站,故而系统主要以J2EE作为开发基础,主要使用了STRUTS2SPRINGHIBERNATE等多种框架的结合使用,用MYECLIPSE作为开发工具,以ORACLEXE作为数据库,以MACROMEDIA公司的DREAMWEAVER作为界面美化工具,使用JAVA语言开发,页面采取JSP动态页面开发技术。该系统界面简单、操作方便,容易维护。关键词电影;订票;网站,JAVA;系统DESIGNANDDEVELOPMENTOFMOVIETICKETBOOKINGSITEBASEDONJAVAABSTRACTTHERAPIDDEVELOPMENTOFTHENATIONALECONOMY,PEOPLESLIFEOFTHEINCREASINGLYHIGHDEMAND,ENTERTAINMENTMOREANDMOREDIVERSE,SERVICEFAST,CONVENIENTREQUIREMENTSAREALSOGETTINGHIGHERANDHIGHER,WHICHPUTFORWARDHIGHERREQUIREMENTSTOTHECINEMAINDUSTRYCONSTRUCTIONANDMANAGEMENTBECAUSETHEMOVIEANDMOVIECATEGORYINCREASESCONTINUOUSLY,THEFILMINDUSTRYCONTINUESTODEVELOP,THECENTERCITYMANAGEMENTHASBECOMEINCREASINGLYDIFFICULTHOWEVER,THETRADITIONALTICKETINGSYSTEMEXISTMANYPROBLEMS,SUCHASTIME,THETRANSACTIONTIMEISTOOLONG,HIGHOPERATINGCOST,INFORMATIONISNOTSHAREDINORDERTOADAPTANDPROMOTETHEDEVELOPMENTOFTHEFILMINDUSTRY,THECOMPANYANDTHEDEPARTMENTOFCINEMABEGANEXTENSIVEUSEOFCOMPUTERMANAGEMENTSYSTEM,THEINTRODUCTIONOFONLINEMOVIETICKETSERVICE,GREATLYREDUCINGTHELABORINTENSITY,TICKETBOOKING,TICKETFARE,SCHEDULING,MANAGEMENTDEPARTMENTSTAFF,IMPROVETHEWORKEFFICIENCYOFEACHDEPARTMENT,ANDCANLARGELYREDUCETHECUSTOMERQUEUINGPURCHASETIMEANDTHUSTOBRINGCUSTOMERSTHEFATIGUE,TOPROVIDEAMOREEFFICIENT,HIGHQUALITY,ORDEREDSERVICEFORTHEVASTNUMBEROFCUSTOMERS,IMPROVETHELEVELOFSERVICECENTERSTUDIOS,ANDGRADUALLYESTABLISHACORPORATEIMAGETHECONTENTSOFTHISGRADUATIONPROJECTISTODESIGNANDIMPLEMENTAWEBBASEDONBOOKINGMOVIETICKETSOFWEBTECHNOLOGY,THISSYSTEMMAINLYUSESJ2EEASTHEBASISOFDEVELOPMENT,THEMAINUSEOFTHECOMBINEDUSEOFSTRUTS2SPRINGHIBERNATEANDOTHERFRAMEWORKS,MYECLIPSEASADEVELOPMENTTOOL,ORACLEXEASDATABASE,WITHMACROMEDIASDREAMWEAVERASTHEINTERFACELANDSCAPINGTOOLS,THEUSEOFJAVALANGUAGEDEVELOPMENT,TAKETHEDEVELOPMENTTECHNOLOGYOFJSPDYNAMICWEBPAGETHESYSTEMHASASIMPLEINTERFACE,EASYOPERATION,EASYMAINTENANCEKEYWORDSMOVIE;TICKETSBOOKING;WEBSITE;JAVA;SYSTEM目录摘要IABSTRACTII1绪论111课题的来源及意义112国内外发展状况213可行性研究2131经济和市场可行性分析3132技术可行性分析3133法律可行性分析32系统开发环境及技术简介421系统开发环境4211MYECLIPSE工具简介4212TOMCAT服务器简介4213ORACLEXE数据库简介522系统开发技术与思想5221JSP技术5222JDBC6223B/S结构6224MVC框架7225SSH框架7226STRUTS框架7227SPRING框架8228HIBERNATE框架83系统分析931需求分析932功能分析1033总体功能划分1134系统ER图124系统设计1341系统模块划分1342程序流程图1443系统功能设计目标1644数据库表设计175系统详细设计2151系统说明2152程序说明21521首页21522用户注册页面24523用户登陆页面27524查看订单页面29525后台登陆页面31526订单管理页面33527放映厅管理页面37568影讯管理页面406软件测试4361测试的重要性4362测试的目的4363测试的步骤4464测试的主要内容44结论45参考文献46致谢47外文原文48中文翻译571绪论11课题的来源及意义生活21世纪,人们亲眼见证了信息化产业的高速发展,互联网以及相关产业创造的种类丰富的互联网产品已经开始逐渐深入到了人们生活的各个部分。互联网的发展给大家带来的各式各样的新鲜的体验和前所未有的便捷高效在不断优化着用户体验,长时间的潜移默化,人们越来越发现有的时候已经离开互联网产品生活就没有习惯中的那样的美好了。正是因为这样,我们甚至可以毫不夸张地说互联网产品以其高效性和便捷性已经成为了现代人生活中完全无法无法脱离的一部分。随着信息化产业的发展的空前繁荣,传统行业为了追赶互时代的快速发展,搭上互联网发展的高速列车,传统行业自身信息化进程也在快速的进行着。许多营利或非营利企业和单位都积极运用网络进行营销或提供服务,甚至政府单位也使用互联网进行各种各样的活动,来加快办公的效率。许多原本只能人工进行的工作,在不同程度的被更快捷更方便更高效的互联网产品所代替。与此同时,随着现代网络在本世纪初的迅速发展,在线的商务活动日趋成熟,电子商务也快速的流行起来,将电子通信的手段添加进购物流程中来优化传统的购物体验,使之能准确提供信息、快速运作速响应。网购已经成为了当下人们最熟悉的词语之一,得到了各个年龄层次人们的肯定。电子商务用他优势不断的挑战着传统行业的地位。近些年我国电影行业的快速崛起,电影的种类和数量的迅速增长,刺激了观影人数的增长,在带来高收益的同时影院的管理难度也大大增加。影院为了保持有效的盈利,必须提供更加良好的服务来进一步提升顾客的观影体验,才可以保证一定的观影人数,为影院本身带来可以长时间持续发展的推进力。为了适应并且推进电影行业的不断发展,各个影视公司和影视相关机构开始大规模的引进互联网技术使用计算机管理系统来进行日常工作的运作。借此机会电影订票网站应运而生,代替了人工完成查询电影信息、订票买票付钱、售票收款打单、退票、评价等等工作,可以再很大程度上减少顾客排队购票的等待时间,简化影院的售票的流程,在有些情况下甚至可以不需要人工的参与,用户自己就可以完成查询、订票、购票、付款直至拿到电影票的整个过程,实现购票的完全自助化。比起从前在电影院的传统购票方式,订票网站的出现能够在很大程度上减少顾客的等待时间,减少了用户因为长时间等待而可能产生的焦躁情绪,为大部分的顾客提供了比从前更加快速、优质、有序的购票体验。对于影院方面有助于减少影院工作人员的工作劳动强度,成倍的提高了工作的效率,提升了服务的质量,有助于影院方面提升自身在消费者中的口碑,树立良好的企业形象,进而创造更高的利润,促进整个电影行业的不断发展。为了满足影院和顾客双方的需求,提供更加优质的服务以及订票的解决方案,设计并开发一套电影订票系统便成为一件很有现实意义的工作。本次毕业设计的课题对网上电影订票系统做了一些相关了解和分析,希望可以结合实际生活中的人工售票系统的功能需要和实际的业务流程,运用相关知识提出网上电影订票系统的解决方案。完成一个基于JAVA的电影订票网站的实现与开发过程。12国内外发展状况随着我国经济的发展和进步,我国人们的生活水平逐渐提高,去电影院看电影形成一种时尚并且逐渐演变成了一种习惯。近年来随着技术的不断革新,在影院观看电影以其独特的的视觉体验,以及其规模的优势和其独有的互动效果和场内气氛赢得了越来越多的人心。有关资料表明,2013年我国故事片产量638部,全国总票房21761亿元,进口片票房9092亿元;而在2012年,全国电影总票房达到17073亿元,同比增长2751。从数据也可以看出最近几年电影和行业的迅猛发展,为社会创创造了极其巨大的经济价值,以及文化价值。在国外,借助于率先高速发展网络技术发的优势,远很早便开始了网络销售电影票的业务,这一点国外的电影产业又一次领先于我国。据悉,借助星球大战票房的空前成功,美国的FANDANGOCOM网站已经从网络售票开始起步,逐步将业务延伸到了电影周边产品的销售,他们会在拍摄道具的拍卖、纪念品销售等环节获得更加多的盈利。根据2010年美国的相关统计部门的统计,美国网络售票带来的销售额已经占据了整个电影产业20的市场份额。与此相比,国内的市场还有很大的可挖掘的潜力,网络售票业务还有很大的发展空间。在国内,为了顺应市场需求,加快电影产业的高速发展,电影行业利用优势的技术积累结合多年的市场营销经验,网络订票业务应运而生。相比于传统的购票售票方式,网络拥有更加方便、快捷、价格合理等方面的优势。陆陆续续产生的电影订票网站开始侵占着越来越多的的市场份额。与此同时,在互联网时代人们的生活方式、习惯也随着互联网的发展发生着改变,从以前买票需要准备各种证件、排队、人工选择以及其他复杂程序,到今天只需要在短短的几分钟事件内动一动手指点一点鼠标即可轻松解决。网络电影票务由此走在时尚消费的主道上。随着社会的发展和进步,社会大分工的细致化和服务化,成为了当下时代的最大趋势之一。与此同时近些年计算机技术不断提高,以其方便快捷的特性,计算机已经深入到社会生活的各个角落。对比从前采用人工售票的方法,不仅效率低,易出错,手续繁琐,而且耗费大量人力;并且控制成本、提高劳动效率、促进服务质量的进一步提高,每个社会服务系统都有自己的一套管理机制。当然,电影院作为服务行业的一部分也不会例外。通过计算机技术与电影院管理相结合的产物电影院售票系统,可以高效的实现对影院管理中的售票服务,使得观众和影院双方那个共同获得自己所需的利益。通过该系统影院可以为观众提供影片的相关简介、播放时间以及影片的票价的信息,同时为顾客实现订票等功能,为顾客和管理员也提供了方便。因此本次毕业设计选择了电影订票网站的设计与开发和实现。用以方便管理员对电影院信息的管理和顾客对最新的电影资讯的了解之后进行订票。通过这个系统,可以很快实现售票服务,并保证无错、高效。13可行性研究可行性研究的目的是用尽可能小的代价在尽短时间内确定问题是否能够解决。一般从经济可行性,技术可行性以及法律可行性等方面来研究一个系统是否具备开发的基本条件。131经济和市场可行性分析随着消费观念的改变,人们的生活水平逐渐提高,大家越来越注重去追求高质量的生活品质。去电影院看电影形成一种时尚。首先,顾客都会有对最近最新电影了解的愿望。其次,如今计算机应用已经普及,人们使用计算机能力快速提高甚至已经变成为最基本的能力之一。再次,管理员有想要对电影院的科学化、规范化、高效化管理的愿望。这种条件下,人们就有了寻找一款专门用来处理此类事务的系统的需求。经此分析,开发一个电影订票网站具有在市场上的可行性。在经济可行性分析中最重要的内容之一是成本投入和收益产出的对比分析。对于一个基于计算机的开发项目要在经济方面评价它是否合理,成本和效益分析要估计开发的花销和系统上线之后的收益。现在,计算机的价格并不高,性能却有了很大的进步。本系统属于网页应用,应用开发软件进行开发,花销主要集中在开发人员的工资和服务器租赁上。如果采用自主开发方式,系统上线后,正常运转将加快电影票销售进程,更有效地支持影城的运行,所产生的效益远大于开发花销,即“小投入,大产出”。经此分析,开发一个电影订票网站具有在经济上的可行性。132技术可行性分析开发一个电影订票网站,项目规模不大。技术上主要涉及前台主页、后台操作和数据库的设计。开发工具方面可用JSP来开发前台和后台的页面,用ORACLE来完成数据库的开发。运行环境方面,由于系统所占系统资源很小,现今市面上主流的计算机完全可以胜任。故此,本系统具有技术上的可行性。133法律可行性分析现系统面向的对象是个人用户,不存在可以暴露个人数据的外部网络接口,且顾客会员具有系统的权限,是在独立自主的情况下使用本系统。而且本系统不会给社会带来危害和隐患。所以,系统具有法律上的可行性。2系统开发环境及技术简介21系统开发环境211MYECLIPSE工具简介在开发本系统中所用到的开发工具是MYECLIPSE。MYECLIPSE企业级工作平台(MYECLIPSEENTERPRISEWORKBENCH,简称MYECLIPSE)是对ECLIPSEIDE的一种扩展,利用MYECLIPSE,我们可以在数据库和J2EE的开发、发布,以及在应用程序服务器的整合当中极大地提高系统的工作效率。MYECLIPSE是一个功能非常丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,STRUTS,JSP,CSS,JAVASCRIP,SQL,HIBERNATE。在结构上,MYECLIPSE的特征可以被分为7类J2EE模型,WEB开发工具,EJB开发工具,应用程序服务器的连接器,J2EE项目部署服务,数据库服务,MYECLIPSE整合帮助。对于以上每一种功能上的类别,在ECLIPSE中都有相应的功能部件,并通过一系列的插件来实现它们。MYECLIPSE结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MYECLIPSE是ECLIPSE的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。212TOMCAT服务器简介TOMCAT是APACHE软件基金会(APACHESOFTWAREFOUNDATION)的JAKARTA项目中的一个核心项目,由APACHE、SUN和其他一些公司及个人共同开发而成。由于有了SUN的参与和支持,最新的SERVLET和JSP规范总是能在TOMCAT中得到体现,TOMCAT5支持最新的SERVLET24和JSP20规范。因为TOMCAT技术先进、性能稳定,而且免费,因而深受JAVA爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的WEB应用服务器。目前最新版本是80。TOMCAT很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。TOMCAT是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好APACHE服务器,可利用它响应对HTML页面的访问请求。实际上TOMCAT部分是APACHE服务器的扩展,但它是独立运行的,所以当你运行TOMCAT时,它实际上作为一个与APACHE独立的进程单独运行的。这里的诀窍是,当配置正确时,APACHE为HTML页面服务,而TOMCAT实际上运行JSP页面和SERVLET。另外,TOMCAT和IIS、APACHE等WEB服务器一样,具有处理HTML页面的功能,另外它还是一个SERVLET和JSP容器,独立的SERVLET容器是TOMCAT的默认模式。213ORACLEXE数据库简介ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器CLIENT/SERVER或B/S体系结构的数据库之一。它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。并且只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。ORACLEXE是ORACLE数据库的简化版本,存放的数据空间受到限制,只支持4G数据。是轻量级的,是一个小型的免费的数据库,可以自由使用。ORACLEXE数据库与ORACLE企业版的数据库从PHP操作层面来说是一样的,也就是说在ORACLEXE平台下开发的PHP应用可以直接移植到ORACLE企业版的环境中去使用。其安装包括企业版服务器端和客户端两部分,用户可以根据实际情况选择不同的部分安装。服务器端安装分为典型安装、最小安装和定制安装三种。客户端安装分为管理员客户端、程序员客户端、应用用户客户端、定制安装客户端。22系统开发技术与思想221JSP技术JAVASERVERPAGES,JAVA服务页面,简称JSP。JSP是由SUNMICROSYSTEMS公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(HTM,HTML)中加入JAVA程序片段(SCRIPTLET)和JSP标签,就构成了JSP网页JAVA程序片段可以操纵数据库、重新定向网页以及发送EMAIL等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持JAVA,也可以访问JSP网页。JSP全名为JAVASERVERPAGES,其根本是一个简化的SERVLET设计,他实现了HTML语法中的JAVA扩张(以形式)。JSP与SERVLET一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。WEB服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的JAVA程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。通常JSP页面很少进行数据处理,只是用来实现网页的静态化页面,只是用来提取数据,不会进行业务处理。JSP技术使用JAVA编程语言编写类XML的TAGS和SCRIPTLETS,来封装产生动态网页的处理逻辑。网页还能通过TAGS和SCRIPTLETS访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于WEB的应用程序的开发变得迅速和容易。JSPJAVASERVERPAGES是一种动态页面技术,它的主要目的是将表示逻辑从SERVLET中分离出来。JSP页面由HTML代码和嵌入其中的JAVA代码所组成。服务器在页面被客户端请求以后对这些JAVA代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JAVASERVLET是JSP的技术基础,而且大型的WEB应用程序的开发需要JAVASERVLET和JSP配合才能完成。JSP具备了JAVA技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、ORACLE公司等,所以JSP迅速成为商业应用的服务器端语言。222JDBCJDBC(JAVADATABASECONNECTIVITY,JAVA数据库连接)是一种用于执行SQL语句的JAVAAPI,可以为多种关系数据库提供统一访问,它由一组用JAVA语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JAVAAPI编写数据库应用程序,同时,JDBC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问SYBASE数据库专门写一个程序,为访问ORACLE数据库又专门写一个程序,或为访问INFORMIX数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。同时,将JAVA语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是JAVA语言“编写一次,处处运行”的优势。JAVA数据库连接体系结构是用于JAVA应用程序连接数据库的标准方法。JDBC对JAVA程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。JAVA具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是JAVA应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作为此种用途的机制。JDBC扩展了JAVA的功能。例如,用JAVA和JDBCAPI可以发布含有APPLET的网页,而该APPLET使用的信息可能来自远程数据库。企业也可以用JDBC通过INTRANET将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有WINDOWS、MACINTOSH和UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用JAVA编程语言,对从JAVA中便捷地访问数据库的要求也在日益增加。MIS管理员们都喜欢JAVA和JDBC的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,JAVA和JDBC可为外部客户提供获取信息更新的更好方法。223B/S结构B/S结构(BROWSER/SERVER,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(BROWSER),如NETSCAPENAVIGATOR或INTERNETEXPLORER,服务器安装ORACLE、SYBASE、INFORMIX或SQLSERVER等数据库。浏览器通过WEBSERVER同数据库进行数据交互。B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。224MVC框架MVC全名是MODELVIEWCONTROLLER,是模型MODEL视图VIEW控制器CONTROLLER的缩写,一种软件设计典范,用一种业务逻辑和数据显式分离的方法组织代码,将业务逻辑被聚集到一个部件里面,在界面和用户围绕数据的交互能被改进和个性化定制的同时而不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型视图控制器(MVC)是XEROXPARC在二十世纪八十年代为编程语言SMALLTALK80发明的一种软件设计模式,已被广泛使用。后来被推荐为ORACLE旗下SUN公司JAVAEE平台的设计模式,并且受到越来越多的使用COLDFUSION和PHP的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。225SSH框架SSH框架是J2EE应用中STRUTS2SPRINGHIBERNATE三大免费开源框架的结合使用,它可以看成工具,也是中间件。他是用来提高我们的开发效率,提高我们软件产品的可维护性、可扩展性乃至敏捷性的。他们里面有很多优秀的设计理念及模式应用。比如,STRUTS属于MVC框架,关键是要了解MVC的概念及大致原理;而HIBERNATE属于ORM系统,属于持久层的解决方案,同样需要对ORM的概念及原理有一个总体的了解。而SPRING属于应用程序框架,其核心是IOC容器以及AOP,SPRING中还集成了很多适用东西,比如对JDBC的封装、自己的MVC、对动态语言的简洁访问等。226STRUTS框架STRUTS是APACHE软件基金下JAKARTA项目的一部分。STRUTS框架的主要架构设计和开发者是CRAIGRMCCLANAHAN。STRUTS是JAVAWEBMVC框架中不争的王者。经过长达九年的发展,STRUTS已经逐渐成长为一个稳定、成熟的框架,并且占有了MVC框架中最大的市场份额。但是STRUTS某些技术特性上已经落后于新兴的MVC框架。面对SPRINGMVC、WEBWORK2这些设计更精密,扩展性更强的框架,STRUTS受到了前所未有的挑战。但站在产品开发的角度而言,STRUTS仍然是最稳妥的选择。STRUTS有一组相互协作的类(组件)、SERVLET以及JSPTAGLIB组成。基于STRUTS构架的WEB应用程序基本上符合JSPMODEL2的设计标准,可以说是MVC设计模式的一种变化类型。根据上面对FRAMEWORK的描述,很容易理解为什么说STRUTS是一个WEBFRAMEWORK,而不仅仅是一些标记库的组合。但STRUTS也包含了丰富的标记库和独立于该框架工作的实用程序类。STRUTS有其自己的控制器(CONTROLLER),同时整合了其他的一些技术去实现模型层(MODEL)和视图层(VIEW)。在模型层,STRUTS可以很容易的与数据访问技术相结合,包括EJB,JDBC和OBJECTRELATIONBRIDGE。在视图层,STRUTS能够与JSP,VELOCITYTEMPLATES,XSL等等这些表示层组件相结合。227SPRING框架简单来说,SPRING是一个轻量的控制反转和面向切面的容器。SPRING实际上是EXPERTONEONONEJ2EEDESIGNANDDEVELOPMENT一书中所阐述的设计思想的具体实现。在ONEONONE一书中,RODJOHNSON倡导J2EE实用主义的设计思想,并随书提供了一个初步的开发框架实现(INTERFACE21开发包)。而SPRING正是这一思想的更全面和具体的体现。RODJOHNSON在INTERFACE21开发包的基础之上,进行了进一步的改造和扩充,使其发展为一个更加开放、清晰、全面、高效的开发框架。SPRING是一个开源框架,由RODJOHNSON创建并且在他的著作J2EE设计开发编程指南里进行了描述。它是为了解决企业应用开发的复杂性而创建的。SPRING使使用基本的JAVABEANS来完成以前只可能由EJB完成的事情变得可能了。然而,SPRING的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何JAVA应用都可以从SPRING中受益。228HIBERNATE框架HIBERNATE是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得JAVA程序员可以随心所欲的使用对象编程思维来操纵数据库。HIBERNATE可以应用在任何使用JDBC的场合,既可以在JAVA的客户端程序使用,也可以在SERVLET/JSP的WEB应用中使用,最具革命意义的是,HIBERNATE可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。3系统分析为了最终完全实现电影订票网站系统,首先要做的就是必须设计出组成这个系统的所有程序模块和确定数据库文件的内容。模块是在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位。是能够单独命名并独立地完成一定功能的程序语句的集合(即程序代码和数据结构的集合体)。它具有两个基本的特征外部特征和内部特征。外部特征是指模块跟外部环境联系的接口(即其他模块或程序调用该模块的方式,包括有输入输出参数、引用的全局变量)和模块的功能;内部特征是指模块的内部环境具有的特点,即该模块的局部数据和程序代码。数据库文件是用来存放相关的数据信息的文件。数据库和系统交互的过程其实本质上就是用户在对系统进行相关操作的时候,系统通过一些方法来对数据文件进行的增删改查的操作。31需求分析所谓“需求分析”,是指对要解决的问题从不同的监督进行尽可能详尽的分析,弄清楚问题的要求,考虑到实现过程中的方方面面,包括需要输入的数据,想要得到的结果,系统性能的高低效率的快慢。在软件开发过程中“需求分析”是及其重要的一环,在系统开发初期就要确定要计算机“做什么”,要达到什么样的效果。而且需求分析也不是一次就可以成型的,也需要在开发过程中不断地更改修正。所以说,需求分析是进行系统开发之前必须进行的步骤。通过一段时间的查阅资料和调研分析后,了解到使用电影订票网站的用户会有以下的需求网站的首页一般情况下会以图片结合文字的形式对电影做展示,方便用户进入主页之后,可以直观的浏览影片的相关信息,例如海报、票价、放映时间等信息。对于网站来说,会把用户分为两类游客类型用户和注册类型用户。任何用户都可以在网站进行简单的浏览,但不对其提供其他的操作。当在进行注册并登陆之后,除了浏览信息,更主要的是用户获得了进行更多操作的权限,最重要的是可以进行订票相关的操作,例如选座,下单、付款等等。订票结束之后,用户可以对自己的订单进行查看,并进行一定的管理操作。对于用户来说以上的操作包含了用户使用电影订票网站过程中进行的最主要的操作。有了这些操作用户基本就可以完整的完成咋电影订票网站上进行订票的流程了。另外,考虑到本系统不只有用户使用,还有系统管理员使用系统来管理维护网站的相关事务,所以对管理员的需求也进行了思考和整理,结果如下登陆管理员账号后,可以添加删除放映厅和电影从并且修改电影的相关信息;可以查看用户的信息并对之进行一定的操作;对于用户的订单管理员可以查看或者进行删除之类的操作;另外管理员还有权限查电影的售票情况。得到了这些需求并分析整理,来确定系统最终要实现的功能。此外对于一个网上系统来说,对数据的安全性和完整性是有一定要求的。用户的相关信息需要保密,只有管理员可以有权进行操作。系统必须准确并且稳定可靠,页面友好,功能齐全,可以正常使用进行操作。并且再现有的基础上可以继续进行升级和开发。32功能分析通过对需求的分析整理可以进一步抽象出系统要实现的功能。经过分析可以得到本系统应该实现以下功能用户方面查询操作(票价、放映时间、主演等)账户管理(注册账号、登录账号)订票操作(选座、下单预定、查看订单、管理订单)管理员方面常规管理(放映厅管理、电影信息管理)经营管理(售票管理、订单管理)用户管理(查看用户、删除用户、锁定用户)33总体功能划分本程序主要分系统管理员,用户两个权限。总功能图如图31所示。图31系统功能需求分析图34系统ER图经过前一阶段的分析,可以得到系统的ER图,如图32所示。图32系统功能需求分析图4系统设计41系统模块划分经过分析得到的系统所需要实现的功能主要分为两部分,一部分是管理员所需要的功能,另一部分是用户所需要的功能。系统管理员需要的的主要功能有常规管理(包括放映厅管理,影讯管理)、经营管理(包括售票管理,订单管理)、注册用户管理。用户的需要的主要功能有注册登录功能、浏览影讯、购票选座位管理、订单管理。根据系统实现目标和系统的功能需求分析,另外结合实际,把系统划分为如下的几个模块用户模块实现用户的注册和登陆。对用户进行日常的管理操作,例如添加用户、更新用户、删除用户、查询用户。订单模块实现订单的相关操作。下订单、处理订单、删除订单、查询订单。放映厅模块对放映厅进行相关管理。添加放映厅、更新放映厅、删除放映厅、查询放映厅。影讯模块对影讯信息进行相关操作。添加影讯、更新影讯、删除影讯、查询影讯。42程序流程图订票流程图,如图41所示。图41订票流程图用户登录流程图,如图42所示。图42登陆流程图用户注册流程图,如图43所示。图43注册流程图43系统功能设计目标本系统是将现代化的计算机技术与销售管理服务模式相结合,按照销售管理的服务流程设计完成的。为了提高系统的效率和质量,使系统在使用的过程中发挥更大的作用,现提出如下系统功能设计目标,具体目标如下(1)操作简单、界面友好使用控件来进行页面的布局,使得输入信息的操作更加简便快捷;使用控件的另一个好处就是大多数的操作只需要点击鼠标或者简单的操作键盘就可以完成目标。(2)信息可见对信息的处理(增加、修改、删除、查询等)将随时在系统中显示出来,让使用者对自己的操作和操作之后的结果一目了然,降低用户的学习成本。(3)功能完善不仅包括用户平时的所进行的增加、修改、删除、查询、注册、登陆等操作,而且,管理员还能进行对会员的管理,对电影和放映厅的管理,以及队售票情况和用户订单的管理。(4)方便移植系统应具有实用性、可靠性和适用性,同时注意到先进性。针对不同的用户,只需要稍作修改就可以开发出适合自己特点的电影票预订系统。系统界面中所需的条目,图片等数据都存放于数据文件中,只要对该文件做部分修改,就能在系统界面上实现及时更新的效果,减少了更改系统源代码的复杂性。(5)动态管理对系统数据库实行动态操作,能实现对数据库信息的动态查询、动态更新修改和动态录入数据。44数据库表设计数据库系统是在文件系统的基础上发展而来的,经历了层次数据库、网状数据库、关系数据库三个阶段。由于关系数据库采用人们比较容易理解和接受的二维表格来组织数据,发展迅速,已成为数据库产品的主流。本系统的前端开发是使用JSP技术,通过JAVABEANS进行逻辑控制和数据库连接,而后台数据库采用的是ORACLEXE。ORACLEXE数据库管理系统是一项全面完整的数据库与分析产品。ORACLEXE容易学习、使用,相关的介绍、教程资料比较多,ORACLEXE全面支持WEB功能的数据库解决方案,与此同时,ORACLEXE还在可伸缩性与可靠性方面有着优秀的特性,而这两方面特性又都是企业数据库系统在激烈市场竞争中克敌致胜的关键所在。无论以应用程序开发速度还是以事务处理运行速度来衡量,ORACLEXE都是在数据库系统的时候一个比较好的选择。数据库的概念结构设计完毕后,现在可以将数据库概念结构转化为某种数据库系统所支持的实际数据库模型,也就是数据库的逻辑结构。经过前一阶段的分析结果来进行本系统的数据库设计。本系统所用到的数据库表会有如下的五张表订单表(主键、下单时间、价格、订单号、电话、真实姓名、状态、关联的用户ID、关联的座位ID)放映厅表(主键是否删除标志、行、列、放映厅名字、座位数)影讯表(主键、添加时间、导演、是否删除标志放映时间、发行公司、剧情、片名、票价、时长、图片、语言、主演、关联的放映厅ID、剩余票数)用户表(主键、添加时间、锁定状态、联系电话、密码、用户权限、真实姓名、用户名)座位表(主键、是否删除标志、排、座、座位信息、关联的影讯ID)根据平台的需求分析和功能模块的划分,因此,最终系统中定义的数据库主要包含5张表订单表T_ORDER,放映厅表T_FANGYINGTING,影讯表T_YINGXUN,用户表T_USER,座位表T_ZUOWEI。在电影票预订系统数据库中各个表的设计结果如表4145所示。表41订单表名称类型空备注IDINT11NO主键CREATETIMEDATETIMEYES下单时间JIAZONGVARCHAR255YES价格ORDEREDVARCHAR255YES订单号PHONEVARCHAR255YES电话TRUENAMEVARCHAR255YES真实姓名ZHUANGTAIVARCHAR255YES状态USERIDINT11YES关联的用户IDZUOWEIIDINT11YES关联座位ID表42用户表名称类型空备注IDINT11NO主键CREATETIMEDATETIMEYES添加时间DELETESTATUSINT11NO锁定状态LIANXIFANGSHIVARCHAR255YES联系电话PASSWORDVARCHAR255YES密码ROLEINT11NO用户权限TRUENAMEVARCHAR255YES真实姓名USERNAMEVARCHAR255YES用户名表43放映厅表名称类型空备注IDINT11NO主键DELETESTATUSINT11NO是否删除标志HANGINT11NO行LIEINT11NO列NAMEVARCHAR255YES放映厅名字ZUOWEISHUINT11NO座位数名称类型空备注IDINT11NO主键DELETESTATUSINT11NO是否删除标志HANGINT11NO行LIEINT11NO列NAMEVARCHAR255YES放映厅名字ZUOWEISHUINT11NO座位数表44座位表名称类型空备注IDINT11NO主键DELETESTATUSINT11NO是否删除标志PAIINT11NO排ZHUANGTAIVARCHAR255YES状态ZUOINT11NO座ZUOWEIVARCHAR255YES座位信息YINGXUNIDINT11YES关联的影讯ID表45影讯表名称类型空备注IDINT11NO主键CREATETIMEDATETIMEYES添加时间DAOYANVARCHAR255YES导演DELETESTATUSINT11NO是否删除标志FANGYINGSHIJIANVARCHAR255YES放映时间GONGSIVARCHAR255YES发行公司JUQINGVARCHAR255YES剧情PIANMINGVARCHAR255YES片名PIAOJIAVARCHAR255YES票价SHICHANGVARCHAR255YES时长TUPIANVARCHAR255YES图片YUYANVARCHAR255YES语言ZHUYANVARCHAR255YES主演FANGYINGTIANGIDINT11YES关联的放映厅IDSHENGYUINT11NO剩余票数5系统详细设计51系统说明根据前一阶段的需求分析和系统设计来进行程序设计。本系统以JAVA作为编程语言进行开发的。使用面向对象的方法进行设计和实现。结合MVC框架;使用JSP页面实现用户、管理员与系统的交互;ORACLEXE数据库来存储数据。操作简单,界面友好,功能完善。52程序说明521首页网站的首页,如图61所示。用户的默认状态是未登录的状态,此时可以进行查看电影的信息但是无法进行购票相关的操作。同时,用户可以通过该面进行跳转到登陆页面或者注册页面来进行登录或者注册的操作。管理员也可以经过此页面来跳转到管理员的登陆界面进行后续的操作。图61首页用户登录后首页会发生变化。登陆状态的首页,如图62所示。注册用户登录之后会跳转至此页面。与未登录状态相比,除了可以查看电影信息以外,还可以进行购票的相关操作。通过点击“购票”的按钮。可以跳转到购票的页面。图62登陆状态的首页主要代码如下电影票订票网站首页我的订单用户注册用户登录管理后台退出登录欢迎USERUSERNAME登录本网站522用户注册页面用户的注册页面,如图63所示。跳转到该页面后,用户需要填写相关信息(用户名、密码、姓名、电话等),然后可以进行注册的操作。填写完毕后点击确定完成注册过程。当然,中途填写错误了可以点击重置来重置填写的信息。图63用户注册页面主要代码如下FUNCTIONCHECKFORMIFDOCUMENTGETELEMENTBYID“USERNAMEID“VALUE“ALERT用户名不能为空RETURNFALSEVARVALID/W/IFVALIDTESTDOCUMENTGETELEMENTBYID“USERNAMEID“VALUEALERT用户名必须是数字,字母或者下划线RETURNFALSEIFDOCUMENTGETELEMENTBYID“PASSWORDID“VALUE“ALERT密码不能为空RETURNFALSEIFDOCUMENTGETELEMENTBYID“PASSWORDID“VALUELENGTH用户注册用户名密码确认密码真实姓名手机操作523用户登陆页面用户登陆页面,如图64所示。注册用户可以在此页面来进行登录。填写注册的用户名和对应的密码来登陆网站,登陆后不光可以查询信息另外也可以进行购票的相关操作,类似于下单、付款等步骤。图64用户登陆页面主要代码如下FUNCTIONCHECKFORMIFDOCUMENTGETELEMENTBYID“USERNAMEID“VALUE“ALERT用户名不能为空RETURNFALSEIFDOCUMENTGETELEMENTBYID“PASSWORDID“VALUE“ALERT密码不能为空RETURNFALSERETURNTRUE用户登录CLASSOPTIONSWITCH_DELIMITER用户名密码操作524查看订单页面查看订单页面

温馨提示

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

评论

0/150

提交评论