1、大连交通大学 2013 届本科生毕业设计(论文)摘 要随着科技的发展,时代的进步,在互联网上查看电影资讯购买电影票已经成为人们生活中不可缺少的东西,因此设计并实现电影票订购网就显得非常重要了,它可以帮您解决排队购票的问题,购票人足不出户就可以在网上查询电影的资讯,票价和电影票的购买情况,只需轻轻按下按钮,您就可以得带您想要的影票。学位论文的主要工作是:完成电影票订购网的设计与实现,该网站主要功能包括两部分:前台功能模块和后台管理模块。前台功能包括:电影剧情介绍、放映信息浏览、登陆订票与购票等;后台管理模块包括:电影剧情发布、放映信息发布、信息修改与删除、订票信息管理、购票信息管理等。根据系统所
2、需功能,选择 MyEclipse 为开发工具,采用 MySQL 做后台数据库,利用 Java Web 开发技术,前台页面使用 JSP。同时系统使用了基于 MVC 机制的 Struts 技术。作为 Web 应用的一个比较成熟的开发模式。使操作方便,可维护性强。关键字:电影票订购网 B/S 模式 MVC MySQL大连交通大学 2013 届本科生毕业设计(论文)ABSTRACTWith the development of science and the epoch progress, checking the movie news and ordering tickets online have
3、 become one of the necessities in our daily life. So it seems significant to design and implement the ticket-order web, which can help you solve the problem of queuing up for tickets. People can check the movies information and price but never leave home. The only thing you need to do to get your ti
4、ckets is just a simple pressing of the button. The main works of academic dissertation are completing design and implementation of the ticket-order web, which mainly includes two functional parts: foreground function module and the background management module. Foreground includes the introduce of m
5、ovies, browsing the showing information, logging in the web and land purchasing tickets. Background management module includes publishing the movie news and showing information, modifying and deleting information, booking information management and tickets information management.According to the fun
6、ction needed by the web-system, I select MyEclipse as the development tools and MySQL as database, using Java Web development technology and the front desk pages are developed by JSP. At the same time the web-system using the Struts technology which is based on the mechanism of MVC as a mature devel
7、opment mode. I get note only the convenient of the operation, but also a strong maintainability.Key words: ticket-order web B/S mode MVC MySQL大连交通大学 2013 届本科生毕业设计(论文)目 录第一章 系统概述 .11.1 课题来源及意义 .11.2 国内外发展状况 .11.3 系统开发环境及技术介绍 .11.3.1 系统运行环境设置 .11.3.2 主要技术介绍 .2第二章 系统需求分析及可行性分析 .42.1 功能需求分析 .42.2 性能需求分析
8、 .42.2.1 准确性和及时性 .42.2.2 系统的易用性和易维护性 .42.2.3 系统的安全性 .42.3 可行性分析 .5第三章 系统总体设计 .63.1 设计任务 .63.2 系统总体功能结构 .6第四章 数据库设计 .94.1 数据库 E-R 图设计 .94.2 数据库表的设计 .114.3 本系统采用的数据库连接技术简介 .12第五章 系统详细设计 .145.1 电影票订购网首页的设计与实现 .145.2 管理员模块的设计与实现 .145.3 用户模块的设计与实现 .175.3.1 用户注册 .175.3.2 用户管理个人信息 .185.3.3 用户购票 .19第六章 系统测试
9、 .206.1 测试原则和测试方法概述 .206.2 测试项目及其用例 .216.3 软件测试结论 .236.4 系统的分析 .246.4.1 缺陷与限制 .24大连交通大学 2013 届本科生毕业设计(论文)6.4.2 总体评价 .24结 论 .25谢 辞 .26参考文献 .27大连交通大学 2013 届本科生毕业设计(论文)1第一章 系统概述1.1 课题来源及意义随着互联网的进一步发展,电影票订购网站作为网络媒体的核心系统,其重要性越来越大。而电影作为人们日常娱乐,电影资讯已经在人们心中有一定的地位。可以说,只要上网,就会接触到电影网站,而想要获取电影信息便一定会锁定电影票订购网,电影票订
10、购网的作用是相当惊人的,其重要性不容置疑。电影票订购网是当前人们了解影讯的重要途径。其核心思想是提供影院最新的影片,用户可以通过影片介绍选择想要观看的影片进行详细了解或订票。订票后,系统会根据个人信息调出送票地址和联系电话。将其应用各大影院中,作为一个与用户接口的功能模块,将极大提高影片的卖座率。设计并实现一套完整,高效的电影票订票系统。通过网上订票系统的实现,可以提高自己的开发经验,同时也解决了窗口售票率低的问题,通过这个系统,可以为你节约更多的时间,可以更方便的查询电影的播放时间,影票的价钱,效率更高,更加便捷,同时也降低了工作人员的工作量和工作成本。电影票订购网的建立可以很好的解决这方面
11、的问题,我们向广大用户推出的是一种全新的网上信息服务,旨在电影院与消费者之间架起了一座高速、便捷的网上信息桥梁,我们的目的是节省您的时间、方便您更好的购买电影票,使您永远走在时代的前沿1.2 国内外发展状况电子商务发展在世界范围内都是刚刚开始,其发展速度极为迅速,传统的商业模式正不断地被新的商业模式所代替,无论什么模式都不具有固定性和成熟性。对于任何国家来说,都有一个探索和创新的问题,这也为我国加快和跨越发展提供了难得的机遇。我们要大胆进行创新,积极探索符合实际的商业模式,壮大企业的市场竞争能力,以适应全球化的激烈竞争。电影票订购网就是 Internet 和电子商务发展的产物,近几年在我国发展
12、迅猛,如同一些电影院纷纷在各地开设分店以拉近电影院与顾客间的距离一样。随着科学技术的飞速发展,Internet 这个昔日只被少数科学家接触和使用的科研工具已经成了普通百姓都可以触及的大中型媒体传播手段。1.3 系统开发环境及技术介绍1.3.1 系统运行环境设置系统的运行对于运行环境的要求是:1硬件环境处理器: Intel(R) Core (TM)2 Duo CPU P7450内存: 2.00GB大连交通大学 2013 届本科生毕业设计(论文)2硬盘空间:320G2软件环境操作系统:Windows 7软件: MyEclipse、Apache Tomcat 6.0数据库: MySQL 5.01.3
13、.2 主要技术介绍1JSP 、JavaBean、Servlet 简介JSP,即 Java Server Pages,是由 Sun Microsystems 公司倡导、多家业内公司参与建立的一种动态网页技术标准。是在传统网页 HTML 文件中植入 JAVA 程序片(Scriptlet)和 JSP 标记(tag) 来形成 JSP 文件(*.jsp)。 JSP 利用 Java 编程语言编写类 XML的标记和程序片,来封装产生动态网页的处理逻辑。还可通过它们访问存在于服务端的资源。JSP 将网页逻辑与网页的设计和显示分离,使基于 Web 的应用程序开发简单而高效。JSP 页面由 HTML 代码和嵌入式
14、 Java 代码组成。服务器端在页面被客户端请求后对 Java 代码进行处理,再将生成的 HTML 页面返回到客户端的浏览器。Java Servlet是 JSP 的技术基础,而大型的 Web 应用程序开发则需要 Java Servlet 和 JSP 共同配合才能完成。所以 JSP 具备了 Java 技术简单实用,完全面向对象,有平台无关性且可靠安全,主要面向互联网的特点。JSP 的优势如下:一次编写,多处运行;系统支持多平台。基本上可以在任意环境中开发、进行系统部署以及扩展;可伸缩性强。一台服务器到无数台服务器的支持,Java 显示了一个巨大的生命力;多样和强大的开发工具支持。Java 有许多
15、优秀的开发工具,并且其中许多可以于多种平台上顺利运行。JDBC 是 Java 中连接数据库的技术,Java 程序片通过 JDBC 驱动程序与数据库链接,执行相关操作。 Sun 公司还开发了JDBC ODBC bridge,此技术使 Java 程序可以访问有 ODBC 驱动程序的数据库,所以Java 程序能访问如 Oracle、Sybase、MS SQL Server 和 MS Access 等数据库。在逻辑处理方面,采用 JAVA 语言并以 Servlet+JAVA Bean 的形式组成逻辑层,最后通过 TOMCAT 服务器发布。JavaBean,一种 JAVA 写成的可重用组件。JavaBe
16、an 通过提供符合一致性设计的public 方法将内部域称为属性。因为属性名称符合这种模式,所以其他 Java 类可以通过相应机制发现和操作这些属性。所以 JavaBean 是 java 的一个类,是某些特定的编码指导方针,并且扩展了适应性和应用范围,使得用户可以访问内部的属性及方法。Servlet(Server Applet)。是用 Java 编程语言编写的服务器端程序。其主要功能是交互地浏览并能够修改数据,从而生成动态 Web 内容。狭义的 Servlet 是 Java 语言实现的一个接口,广义的 Servlet 是指任何能实现这个接口的类。Servlet 运行于支持 Java 的应用服务
17、器中。Servlet 可响应任何类型的请求,但大多数情况下 Servlet 只用于扩展基大连交通大学 2013 届本科生毕业设计(论文)3于 HTTP 协议的 Web 服务器,工作模式为:客户端发向服务器发送请求;服务器启动并调用 Servlet;Servlet 根据客户端的请求生成响应内容,将响应结果传给服务器,服务器将响应结果返回到客户端。ava 服务器页面(JSP)是 HttpServlet 的一个扩展。由于 HttpServlet 多是用来响应HTTP 请求的,并返回 Web 页面,所以在编写 servlet 时大量的 HTML 内容不免会被涉及到,这给 servlet 的编写和可读性
18、带来很大障碍,JSP 便是在这个基础上产生的,其功能是用 HTML 的书写格式,在某个地方加入 Java 代码片,从而将程序员从复杂的HTML 中解放出来,将更多的精力放在 servlet 本身的内容上。JSP 在首次被访问时会被应用服务器转换为 servlet,在这之后的运行中,则直接调用此 servlet,而不再访问 JSP 页面,所以 JSP 的实质仍是 servlet。2MySQL 简介MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发。后来被 Sun公司收购。由于其体积小、速度快、总体拥有成本低,尤其源代码开放这一点,使得许多中小型网站为了降低总体拥有成本而选
19、择了 MySQL 作为网站的数据库。与其他大型数据库例如 Oracle、DB2 、SQL Server 相比,MySQL 有它的不足之处,如规模较小、功能有限(MySQL Cluster 的功能和效率都相对比较差) ,但是这并没有减少它受欢迎的程度。对于个人使用者和中小型企业来说,MySQL 提供的功能已足够强大,而且由于 MySQL 是源代码开放软件,因而可以大大降低总体拥有成本。 1.4 本论文的结构本次课题主要研究对象是电影票订购网。主要是针对解决目前电影票订购中存在的问题,为影迷提供更便利服务的同时也为经营者带来更多的效益而进行了各项研究。该网站基于 Windows 7 操作系统开发,
20、并采用了 MySQL 数据库。本次开发按照软件工程的瀑布模型进行,与之相应的,论文结构如下:第一章:论文的概述部分,主要介绍了电影票订购网的课题来源及意义、国内外发展现状。其次是技术简介,介绍了 JSP、JavaBean、Servlet 技术和它们之间的关系,也介绍了 MySQL 的技术及特点。第二章:研究了电影票订购网需求分析,根据系统的特点,分析系统的功能性以及可行性。第三章:对电影票订购网的总体设计进行说明,功能概述、功能模块的介绍;分析绘制总体功能结构图,概述各个功能模块,初始界面并以流程图加以显示。第四章:对数据库设计进行说明,说明 E-R 图的优点,对数据库 E-R 图进行设计与绘
21、制,包括整体 E-R 图和局部 E-R 图;设计数据库表,说明各个表的主键,存放数据的内容及作用;在对数据库连接的方式做简单介绍。第五章:详细设计,显示各个主模块及其包含模块的详细设计,描述各个功能模块所实现的功能内容,并通过软件截图显示功能实现的效果。大连交通大学 2013 届本科生毕业设计(论文)4第六章:系统测试,介绍系统测试的必要性,目前有哪些测试的方法,本系统采用的方法及其概念,显示测试的结果。第二章 系统需求分析及可行性分析需求分析的前提是准确、完整地获取用户需求。向问题领域的专家学习,进行用户需求调查是需求分析的第一步。用户需求通常可以分为功能需求和性能需求两类。功能需求定义了系
22、统应该做什么,系统要求输入什么信息,输出什么信息,以及如何将输入变换为输出。性能需求则定义了软件运行的状态特征,如系统运行效率,可靠性,安全性,可维护性等等。2.1 功能需求分析根据调研分析得知,电影票订购网系统主要由用户模块、影讯信息模块和订单信息模块三个部分组成。本课题主要功能详解如下:1用户管理用户管理主要提供客户信息的录入,修改和查询服务,同时为订单管理和售后服务管理提供信息依据。2影讯信息管理影讯信息管理主要功能有影讯信息的查看,增加,修改,删除,检索。3订单管理订单信息模块:根据个人 ID 生成相应订单。2.2 性能需求分析2.2.1 准确性和及时性通过硬件结构的严谨设计,及软件代
23、码的正确性控制个人信息及数据的准确性提供保障。通过技术手段保证每次变化的数据都在系统中中显示最新的数据信息,避免了信息的不同步和错误数据等问题。2.2.2 系统的易用性和易维护性该系统操作从头至尾都在同一个界面上完成,功能列表一目了然,用户上手性强;超级管理员和普通管理员各司其职,分工明确,在优良的软件和硬件环境配合下,后期维护也变得很容易。2.2.3 系统的安全性由于本系统采用的是 JSP+MySQL 所开发的系统,因此在安全性方面存在的隐患之一就是数据库数据的安全性。一方面由于本系统的登陆界面中,需要用户输入用户名和用户密码,是用户的唯一识别方式,不能存在安全上的隐患。另一方面由于本系统采
24、用的数据库为 MySQL,其数据库文件在站点内部,它在数据的安全性方面存在一定的缺陷,当服务器受到攻击,重要的数据外泄,造成的后果是无法想象的。因此,为了增加安全性,必须对数据库中的重要信息进行加密以保证系统的安全。大连交通大学 2013 届本科生毕业设计(论文)5为了保证数据库中数据的安全性可以对数据库敏感数据加密达到其安全性的目的。通过查阅相关书籍和资料,了解到 md5 加密算法是目前较为常用的一种加密算法。本系统也采用了 md5 实现对数据库中重要数据的加密。 MD5 的全称是 Message-Digest Algorithm 5(信息-摘要算法) ,在 90 年代初由 MIT Labo
25、ratory for Computer Science 和RSA Data Security Inc 的 Ronald L. Rivest 开发出来。此算法是不可逆的,所以它即既可用于客户端加密,也可用于服务器端加密。它的作用是让大容量信息在用数字签名软件签署私人密匙前被“压缩“成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数) 。2.3 可行性分析可行性分析的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决,是否值得去解决。可行性分析的任务是明确项目开发的必要性和可行性。必要性来自实现开发任务的迫切性,而可行性则取决于实现应用系统的资源和条件。开发技术的可行性分析:首
26、先,JSP 语言简单易懂,效果直观。相对于 ASP 等其他语言效率和安全性更高、组件方式更方便、适应平台更广。其次,Myeclipse 作为开发环境其功能非常强大,支持也十分广泛,尤其是对新手容易掌握,几乎囊括了目前所有主流开源产品的专属 eclipse 开发工具。最重要的是下载和使用都是完全免费的。最后,选择 Tomcat 服务器的最大优点在于:免费、开源、更新快、跨平台并且可以支持最新标准。大连交通大学 2013 届本科生毕业设计(论文)6第三章 系统总体设计3.1 设计任务网站主要功能包括两部分:前台功能模块和后台管理模块。前台功能包括:电影剧情介绍、放映信息浏览、登陆订票与购票等;后台
27、管理模块包括:电影剧情发布、放映信息发布、信息修改与删除、订票信息管理、购票信息管理等。3.2 系统总体功能结构为了满足普通用户和管理员能最大限度地使用该系统的要求,本系统采用三 层 结构 体系结构,即 JSP+ Struts+ MySQL 数 据 库 。 如图 3-1 所示图 3-1 三层体系结构其中视图部分由 HTML 标签和 JSP 技术构成,并应用 CSS 和 JavaScript 进行美化。由于本系统属于内部应用系统,风格被定位为简洁大方。整个系统仅使用一张图片,所有美化工作全部交给 CSS 处理,保证了显示速度,对于要求性能的应用系统来说是最好的选择。与数据进行交互的工作被放在 JavaBean 中处理,其中包括选择 Bean、插入 Bean和修改 Bean。同时还设计编写了一些提供共通功能的工具类。例如获取系统时间和日期时间转换等。系统的具体逻辑处理被放在 Servlet 中。Servlet 通过 Bean 与数据库交互,再对数据进行处理和封装,返回给前台页面显示,分离了前台客户端和后台的业务处理,无论是安全性还是可扩展性都非常优秀。根据需求分析与系统功能设计目标,结合活动者和用例得到的用例图如下图 3-2所示。视 图 数据库 逻辑处理