影城在线订票系统毕业设计正文教材.docx
- 文档编号:8527383
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:37
- 大小:2.84MB
影城在线订票系统毕业设计正文教材.docx
《影城在线订票系统毕业设计正文教材.docx》由会员分享,可在线阅读,更多相关《影城在线订票系统毕业设计正文教材.docx(37页珍藏版)》请在冰豆网上搜索。
影城在线订票系统毕业设计正文教材
1引言
电影院是为观众放映电影的场所。
电影在产生初期,是在咖啡厅、茶馆等场所放映的。
随着电影的进步与发展,出现了专门为放映电影而建造的电影院。
电影院必须满足电影放映的工艺要求,得到应有的良好视觉和听觉效果。
随着社会经济的快速发展,电子商务在世界范围内的社会生活节奏的加快,许多社会人士忙于工作等繁琐事务,每次想去影城观看电影都要经过现场查询最近热映的影片,每部影片的放映场次等信息,然后才能开始订票,而往往排队等候很长时间以后才发现自己要观看的那场影片的票已经售完,或是没有合适的观看座位。
人们的娱乐活动越来越丰富,人们看电影的热情也越来越高,大量的观众同一时间段来到电影院购票,致使影院人员工作量增加同时出现了买票难,浪费时间,浪费精力而且最终还一定买到自己想看的票等现象。
这使得影院管理人员不得不多雇佣几个人来管理,这样的话就增加了成本,而且他们所做的工作不一定令人满意,可能还不安全。
这时一套好的影城在线订票系统就可以解决所有问题,它不仅工作效率高,最重要的是它不仅可以连续工作且不收任何费用。
此外安装了网吧管理系统后,可以通过设置权限、密码的方式来达到安全的目的。
有了本系统,可以很方便的让影迷在家上网查看影院的影片及票务的信息,这样既省时又省力,可以同时了解到不同的影片信息,有更多的选择,从而影迷和影城双方都满意的结果。
利用互联网的便利性,使人们可以实时地在线选购自己需要的电影票券。
这样避免了传统购票方式给人们带来的长途奔波、长时间排队的疲劳。
其次,网上影院订票系统将人们实际的购票模式通过网络形象地模拟出来,人们在网上购票时如身临其境,能在任何时间选择自己所需的电影票券,这包括电影的种类、播放时间、座位等信息。
它将传统的售票模式在网络上模拟出来,使人们可以足不出户地选购自己需要的各式票券,快捷、便利,符合现代人的快节奏生活方式。
通过网络轻松订票,从而减少许多因现场购票失败的客户,可促使我国电影事业更好更快的发展。
2系统技术介绍
影城在线订票系统采用B/S模式开发,采用MyEclise作为开发工具,用Java、JavaScript、CSS语言和JSP技术等实现程序开发,用MySQL作为后台数据支持。
以前对这些技术、工具及语言只是了解,对其内部的一些东西都不是很清楚现在有了更系统的认识。
下面对这些技术进行详细的介绍。
2.1 B/S开发模式
B/S(Browser/Server)结构,即浏览器和服务器结构。
是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。
这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。
客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,服务器安装Oracle、Sybase、Informix或 SQLServer等数据库。
浏览器通过WebServer同数据库进行数据交互。
2.1.1 B/S的优点
B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。
只要有一台能上网的电脑就能使用,客户端零维护。
系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。
甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。
2.1.2 B/S的缺点
个性化特点明显降低,无法实现具有个性化的功能要求。
操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。
页面动态刷新,响应速度明显降低。
无法实现分页显示,给数据库访问造成较大的压力。
功能弱化,难以实现传统模式下的特殊功能要求。
2.2 MyEclipse8.5开发平台
本系统是采用MyEclipse8.5为平台开发实现的。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、JavaScript、Spring、SQL、Hibemate。
在结构上,MyEclipse的特征可以被分为7类:
1)JavaEE模型;2)WEB开发工具;3)EJB开发工具;4)应用程序服务器的连接器;5)JavaEE项目部署服务;6)数据库服务;7)MyEclipse整合帮助;对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。
MyEclipse8.5该版本集成了Eclipse3.5.2,提升了团队协作开发、开发周期管理以及Spring和Hibernate的更好支持
2.3 MySQL5.1数据库平台
本系统采用MySQL5.1作为数据库。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库[1]。
MySQL拥有如下特点:
a)支持AIX、FreeBSd、HP.UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。
b)为多种编程语言提供了API。
这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
c)支持多线程,充分利用CPU资源。
d)优化的SQL查询算法,有效地提高查询速度。
e)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_Jis等都可以用作数据表名和数据列名。
f)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
g)提供用于管理、检查、优化数据库操作的管理工具。
h)可以处理拥有上千万条记录的大型数据库。
2.4 JSP简介
JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。
在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E.mail等,实现建立动态网站所需要的功能。
所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。
JSP全名为javaserverpage,其根本是一个简化的Servlet设计,实现了Html语法中的java扩张(以<%,%>形式)。
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端[2]。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易[3]。
JSP(JavaServerPages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成[4]。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
3需求分析
3.1 系统的需求分析
网上订票系统需要满足如下需求:
前台主要功能:
a)展示网站的影片信息,用户可进行浏览正在上映和即将上映的影片信息
b)可以根据不同条件查询本网上影院的影片场次时间
c)可以查看单部影片的详细信息和场次时间
d)选择影片和座位进行订票并得到订票信息,可在用户中心查看订票信息和进行退票操作
e)可在用户中心修改用户信息,登录密码和上传头像
后台主要功能
a)可对用户进行查询,添加,修改,删除的管理
b)可对影片进行查询,添加,修改,删除的管理
c)影片管理可添加新影片语言,类别,版本
d)可对场次进行查询,添加,修改,删除的管理
e)可对前台页面的广告进行广告以及友情链接信息进行维护和更换管理
f)可对管理员进行查询,添加,修改,删除的管理及管理员的权限管理
g)系统深入考虑数据操作效率和数据安全等因素
h)系统运行稳定,对不同权限有限制,安全可靠
3.2 功能需求
基于系统需求分析,网上影院订票系统分为前台和后台,下面分别对一些主要功能模块进行详细说明。
用户注册:
游客可以通过注册功能注册新用户,成为会员。
用户信息修改:
会员可以修改自己的基本信息。
用户登录:
仅接受指定信息的用户登录,确保数据安全性.
网站浏览:
负责分页列出网站所有影片的信息,包括标题、类型、来源字段及发布日期,每条影片的标题被做成一个超链接,点击它们就能跳转进入影片简介页面.
在线订票:
会员用户可以通过在线订票功能,购买自己想要观看的影片的电影票。
影片介绍:
在其他页面中点击标题链接即进入影片介绍页面,此时,每条影片介绍的详细信息将被取出,包括内容、标题、关键字等,并按照相对固定的格式放置在页面的不同区域,所有影片介绍使用大致相同的页面布局,只是各字段对应的内容不同而已.
影片查询:
该模块提供了影片查询功能,输入待查找的内容及选定分类信息,可以快速地找到符合条件的影片,并输出查询结果.
影片管理:
负责分页罗列显示的影片信息,管理者可以对该条影片信息进行删除.
用户管理:
网站管理员可以初始化会员密码。
选座订票处理:
用户可自选座位(一次订票最多4张票),确认订票信息,执行订票
管理员登录:
通过管理员信息及验证码验证,将管理员信息临时储存在服务器中以便使用。
场次管理:
可对场次进行录入操作,可通过场次时间范围对场次进行搜索操作,可对场次信息进行修改及删除操作
票务管理:
可根据订单号查用户订票信息
广告管理:
管理员可对前台页面的广告及连接地址进行更换
管理员管理:
可对管理员进行添加操作,可对管理员进行查询操作,可对管理员进行修改及删除操作,可对管理员进行权限的管理
4系统概要设计
4.1 系统实现方案
4.1.1 系统设计思想
影城在线订票系统主要完成影院票务管理及影片信息管理,包括影片的修改、添加、删除、场次管理等。
另外系统还要能够管理影院管理人员的用户信息等。
当会员或者管理员系统登录系统时,程序分别从已有的会员账户表和管理员账户表中读出用户名和密码,并检验该密码与用户输入的密码是否匹配,只有用户名在数据库中存在并且密码正确时,才能进入系统。
当需要完成会员信息的编辑和操作时,程序就将这些操作的信息写入到相应的数据表中。
当管理员需要查询这些操作信息时,程序又从数据库中读出相应的操作信息。
4.2 系统结构设计
4.2.1 系统结构设计
影院订票网站分为前台和后台。
其中,根据影院订票网站前台的特点,可以将其分为影片浏览、场次查询、选座订票、用户中心、我的订单、编辑个人信息、修改密码、订单查询、及网站广告,其中各个部分及其包括的具体功能模块如图4.1所示。
图4.1系统前台模块
根据影院订票网站的特点,可以将其分为影片管理,场次管理,用户管理,广告管理,管理员管理,权限管理,其中各个部分及其包括的具体功能模块如图4.2所示。
图4.2系统后台模块
4.2.2 系统功能模块划分
根据上述的系统总体设计的分析,影城在线订票系统主要划分为以下几个模块:
影片管理、场次管理、用户管理、票务管理、管理员管理、广告管理、管理员管理
下面对各个模块的一些主要功能模块进行介绍。
a)用户登录、注册及注销
用户注册:
用户邮箱格式与唯一验证,用户密码验证,验证码验证,可选是否30天内自动登录,并且将用户信息临时储存在服务器中以便使用。
用户登录:
系统通过Cookie检验是否自动登录,并且将用户信息临时储存在服务器中以便使用。
用户注销:
删除用户在服务器中的临时信息。
b)影片信息浏览
用户可浏览正在热播与即将上映的影片
用户可查看影片的详细信息
c)影片场次查询
可按照影片名查询场次
可按照时间段查询场次
可按照版本分类查询场次
d)选座订票处理
用户可自选座位(一次订票最多4张票)
确认订票信息,执行订票
订票后,系统自动发送用户订票信息到用户邮箱
e)用户中心
显示用户交易提醒和近期影片推荐
我的订单:
显示我的电影订单,并可对可退票的订单进行退票操作;退票成功后,系统自动发送用户退票信息到用户邮箱
编辑个人信息:
可对基本信息进行修改,也可修改用户头像
密码修改:
可对用户密码进行修改
f)管理员登录
通过管理员信息及验证码验证,将管理员信息临时储存在服务器中以便使用。
g)影片管理
可对新片进行录入操作
可按影片名对影片进行搜索操作
可对影片信息进行修改及删除操作
可添加新影片语言,类别,版本
h)场次管理
可对场次进行录入操作
可通过场次时间范围对场次进行搜索操作
可对场次信息进行修改及删除操作
i)票务管理
可根据订单号查用户订票信息
j)用户管理
可对用户进行添加操作
可通过用户名对用户进行搜索操作
可对用户信息进行修改及删除操作
k)广告管理
管理员可对前台页面的广告及连接地址进行更换
l)管理员管理
可对管理员进行添加操作
可对管理员进行查询操作
可对管理员进行修改及删除操作
可对管理员进行权限的管理。
5数据库设计
5.1 数据流图
i)面向用户的客户端系统流程
面向用户的客户端系统流程如图5.1所示:
图5.1 面向用户的客户端系统流程
j)面向管理员的系统流程图
面向管理员的系统流程如图5.2所示:
图5.2 面向管理员的系统流程
5.2 数据库概念结构设计
概念模型是数据库系统的核心和基础。
由于各个机器上实现的DBMS软件都是基于某种数据模型的,但是在具体机器上实现的模型都有许多严格的限制。
而现实应用环境是复杂多变的,如果把现实世界中的事物直接转换为机器中的对象,就非常不方便。
因此,人们研究把现实世界中的事物抽象为不依赖与具体机器的信息结构,又接近人们的思维,并具有丰富语义的概念模型,然后再把概念模型转换为具体的机器上DBMS支持的数据模型[5]。
概念模型的描述工具通常是使用E.R模型图。
该模型不依赖于具体的硬件环境和DBMS。
概念结构是对现实世界的一种抽象。
所谓抽象是对实际的人,物,事和概念进行人为处理,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确的加以描述,这些概念组成了某种模型。
通过概念设计得到的概念模型是从现实世界的角度对所要解决的问题的描述,不依赖于具体的硬件环境和DBMS
数据表关系图如图5.3所示:
图5.3数据表关系
5.3 数据库逻辑结构设计
根据数据库需求分析,本系统的数据表结构具体设计如下:
5.3.1管理员信息表(admin)
管理员信息表主要用来保存管理员信息,包括字段用户名、密码、权限,主键为管理员ID。
结构如表5.1所示:
表5.1 管理员信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
admin_id
INTEGER
No
Yes
Null
管理员ID
admin_name
VARCHAR(45)
No
管理员登录用户名
admin_pwd
VARCHAR(45)
No
管理员登录密码
admin_privilege
VARCHAR(45)
No
管理员权限
5.3.2用户信息表(member)
用户信息表主要用来保存用户信息包括字段邮箱、密码、姓名、电话、金额、性别、头像地址,主键为用户ID。
结构如表5.2所示:
表5.2 用户信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
member_id
INTEGER
No
Yes
Null
用户ID
member_email
VARCHAR(45)
No
用户邮箱
member_pwd
VARCHAR(45)
No
用户密码
member_name
VARCHAR(45)
Yes
Null
用户姓名
member_phone
VARCHAR(20)
Yes
Null
用户电话
member_money
DOUBLE
Yes
Null
用户金额
member_gender
TINYINT
(1)
Yes
Null
用户性别
member_photo
VARCHAR(200)
Yes
Null
用户头像地址
5.3.3影片版本信息表(edition)
影片版本信息表主要用来保存影片版本信息,包含影片版本主键影片版本ID。
结构如表5.3所示:
表5.3 影片版本信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
edition_id
INTEGER
No
Yes
Null
影片版本ID
edition_name
VARCHAR(45)
No
影片版本名
5.3.4影片类别信息表(kind)
影片类别信息表主要用来保存影片类别信息,包含影片类别名主键影片类别ID。
结构如表5.4所示:
表5.4 影片类别信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
kind_id
INTEGER
No
Yes
Null
影片类别ID
kind_name
VARCHAR(45)
No
影片类别名
5.3.5影片语言信息表(language)
影片语言信息表主要用来保存影片语言信息。
结构如表5.5所示:
表5.5 影片语言信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
language_id
INTEGER
No
Yes
Null
影片语言ID
language_name
VARCHAR(45)
No
影片语言名
5.3.6影片信息表(language)
影片信息表主要用来保存影片信息,包含名称、导演、演员、信息、语言、类别、图片地址、片长、上映日期、版本。
结构如表5.6所示:
表5.6 影片信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
movie_id
INTEGER
No
Yes
Null
影片ID
movie_name
VARCHAR(45)
No
影片名称
movie_director
VARCHAR(45)
No
影片导演
movie_actor
VARCHAR(45)
No
影片演员
movie_info
VARCHAR(500)
No
影片信息
movie_language
INTEGER
No
语言ID
movie_kind
INTEGER
No
类别ID
movie_photo
VARCHAR(200)
No
照片地址
movie_long
INTEGER
No
影片片长
movie_date
TIMESTAMP
CURRENT_TIMESTAMP
上映日期
movie_edition
INTEGER
No
影片版本
5.3.7场次信息表(play)
影片场次信息表主要用来保存影片场次信息,包含影片ID、场次时间、场次价钱,主键为场次ID。
结构如表5.7所示:
表5.7 影片场次信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
play_id
INTEGER
No
Yes
Null
场次ID
play_movie
INTEGER
No
影片ID
play_time
TIMESTAMP
CURRENT_TIMESTAMP
场次时间
play_price
DOUBLE
No
场次价钱
5.3.8场次信息表(ticket)
电影票信息表主要用来保存电影票信息,包含场次ID,用户ID,电影票号、座位号、实际票价、订票时间、退票标识,主键为电影票ID。
结构如表5.8所示:
表5.8 电影票信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
ticket_id
INTEGER
No
Yes
Null
电影票ID
ticket_play
INTEGER
No
场次ID
ticket_member
INTEGER
No
用户ID
ticket_code
VARCHAR(45)
No
电影票号
ticket_seat
INTEGER
No
座位号
ticket_price
DOUBLE
No
实际票价
ticket_date
TIMESTAMP
CURRENT_TIMESTAMP
订票时间
ticket_flag
TINYINT
(1)
No
退票标识
5.3.9广告信息表(ad)
广告信息表主要用来保存广告信息,包含图片地址、图片链接,主键为广告ID。
结构如表5.9所示:
表5.9 广告信息表
字段名
数据类型
是否为空
是否主键
默认值
描述
ad_id
INTEGER
No
Yes
Null
广告ID
ad_img
VARCHAR(200)
No
广告图片地址
ad_href
VARCHAR(200)
No
广告链接地址
6系统详细设计
系统详细设计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 影城 在线 订票 系统 毕业设计 正文 教材