参考论文 - 图文

更新时间:2023-03-08 17:51:29 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

题目:基于

毕业设计(论文)说明书

JSP技术的网上影院订票系统的设计与实现

系 名 专 业 学 号 学生姓名 指导教师

201年 月 5日

摘 要

伴随着网络的蓬勃发展和不断普及,以及电影的拍摄技术与视觉效果都在不断提升,人们走入电影院看电影已是越来越普便。但由于种种原因,人们没有时间到电影院排队买票。网上影院订票系统就是为了达到这个目的而进行设计并实现的。

网上影院订票系统的功能包括:后台用户管理,影片管理,场次管理,广告管理,管理员权限管理,前台影片分类浏览,按条件场次查询,选座订票,用户信息管理,用户退票。本文首先对系统需求分析做了详细的介绍,然后对系统的概要设计进行了阐述并重点介绍了网上影院订票系统功能模块的具体设计及实现。

本系统是用MySQL5.0数据库、JAVA语言和MyEclipse9.0平台编写实现的。其实现技术主要是数据库后台和动态网页前台相互连接,因此必须从操作的灵活性、敏捷性以及整体的高效性、安全性进行具体设计。作为一种该研究方向的探索,系统旨在提供一个可以操作、功能完全、特色突出的网上影院订票系统。

关键词:网上影院订票系统;JAVA;MySQL5.0;MyEclipse9.0

ABSTRACT

With the vigorous development of the network and the increasing popularity, and film technology and visual effects are rising, people go to the cinema is already more and more at will. But for a variety of reasons, people have no time to the cinema lined up to buy tickets. Online cinema ticket system is to achieve this goal and to carry on the design and realization.

Online cinema ticket system features include: the background user management, the movie management, hitting streak management, administration of advertising, the administrator rights management, front desk film classification browsing, according to conditions streak inquires the, choose a booking, the user information management, the user refunded. This paper first analyzes the system requirements for described in detail, and then to the outline of the system design is discussed in this paper and mainly describes the cinema tickets online system function module design and realization of the concrete.

This system is used MySQL5.0 database, the JAVA language and MyEclipse9.0 platform of the realization of the writing. Its implementation technology is mainly backstage database and dynamic web front desk mutual connection, and therefore must be from operation flexibility and agility and the overall efficiency of the safety, specific design. As a kind of the study direction exploration, the system is intended to provide a can operation, fully functioning, outstanding characteristics of online cinema ticket system.

Key words:Online cinema ticket system;MySQL5.0;JAVA;MyEclipse9.0

目 录

第一章 绪论 ................................... 1

1.1 选题背景 ..................................... 1 1.2 网上影院订票系统的发展 ....................... 1 1.3 网上影院订票系统的意义 ....................... 2

第二章 系统分析 ............................... 4

2.1 系统需求分析 ................................. 4 2.2 系统功能分析 ................................. 4 2.3 系统开发工具 ................................. 6 2.3.1 MyEclipse9.0 ............ 错误!未定义书签。 2.3.2 MySQL 5.0 ............... 错误!未定义书签。

第三章 系统概要设计 ........................... 8

3.1 系统功能结构设计 ............................. 8 3.2 数据字典 ..................................... 9 3.2.1 数据项 ................................... 9 3.2.2 数据存储与数据流图 ...................... 15 3.3 数据库概念结构设计 .......................... 17 3.4 数据库逻辑结构设计 .......................... 18 3.5 数据库搭建Struts2 + Spring + Hibernate ...... 21

第四章 系统详细设计与实现 .................... 25

4.1 网站首页 .................................... 25 4.1.1 头部导航栏 .............................. 26

1

4.1.2 中间部分 ................................ 26 4.1.3 页面下面部分 ............................ 27 4.2 电影展示页面 ................................ 28 4.3 放映时刻表页面 .............................. 29 4.4 单部影片详细展示页面 ........................ 30 4.5 登录页面 .................................... 31 4.6 注册页面 .................................... 33 4.7 选座订票页面 ................................ 33 4.8 支付页面 .................................... 35 4.9 用户中心页面 ................................ 36 4.9.1 用户中心 ................................ 36 4.9.2 我的订单 ................................ 37 4.9.3 编辑个人信息 ............................ 38 4.9.4 修改密码 ................................ 39 4.10 管理员后台登录 ............................. 39 4.11 后台影片管理 ............................... 40 4.12 后台场次管理 ............................... 41 4.13 后台用户管理 ............................... 42 4.14 后台票务管理 ............................... 43 4.15 后台广告管理 ............................... 44 4.16 后台管理员管理 ............................. 44 4.17 分权限管理 ................................. 45

2

4.18 过滤所有action——拦截器 ................... 46 4.19 过滤所有jsp——过滤器 ...................... 46

第五章 系统测试及运行维护 .................... 47

5.1 系统测试 .................................... 47 5.1.1 系统测试 ................................ 47 5.1.2 测试目的 ................................ 47 5.1.3 测试方法和工具 .......................... 47 5.2 系统运行 .................................... 48 5.3 系统维护 .................................... 48

参考文献 ........................................ 51 外文资料 中文译文 致谢

3

毕业设计(论文)

第一章 绪论

近年来,随着Internet技术的快速发展,电子商务越来越流行起来。各行各业都在积极使用现代化手段,不断改善服务质量,提高工作效率。运用电子通信作为手段进行经济活动,通过这种方式人们可以对带有经济价值的产品和服务进行宣传、购买和结算。电子商务是一种新兴的商务形式,它能提供快速、准确、高效的商务运作,是当今商务运作发展的主流方向。

1.1 选题背景

随着Internet的不断扩大和发展,计算机网络已经深入到了各行各业,各个领域。与传统的商务模式相比,现代的电子商务具有成本低、效率高、对市场变化反应迅速以及提供个性化服务等许多传统商务模式所无法比拟的优点。人们实际生活中的商品交易活动被电子商务的实施通过互联网络模拟出来,这种交易的方式能使产品在世界范围内交易并向消费者提供多种多样的选择。

社会生活节奏的加快,许多社会人士忙于工作等繁琐事务,每次想去影城观看电影都要经过现场查询最近热映的影片,每部影片的放映场次等信息,然后才能开始订票,而往往排队等候很长时间以后才发现自己要观看的那场影片的票已经售完,或是没有合适的观看座位。

电影业的蓬勃发展,必然引发的一个问题是群众对电影票需求的增大。特别是一些关注度很高的大片上映的时候,很多观众都反应电影票实在是很难购买,有些人就只能选择观看午夜场。在一些大城市规模很好的影城售票厅内,甚至出现要一大早起来排队去抢票的现象。还有些观众反应等那么长的队伍能买到票,但是都没有自由选择座位的权利。

利用互联网的便利性,使人们可以实时地在线选购自己需要的电影票券。这样避免了传统购票方式给人们带来的长途奔波、长时间排队的疲劳。其次,网上影院订票系统将人们实际的购票模式通过网络形象地模拟出来,人们在网上购票时如身临其境,能在任何时间选择自己所需的电影票券,这包括电影的种类、播放时间、座位等信息。它将传统的售票模式在网络上模拟出来,使人们可以足不出户地选购自己需要的各式票券,快捷、便利,符合现代人的快节奏生活方式。

通过网络轻松订票,从而减少许多因现场购票失败的客户,可促使我国电影事业更好更快的发展。

1.2 网上影院订票系统的发展

电影,又称映画,是由活动照相术和幻灯放映术结合发展起来的一种现代艺

1

毕业设计(论文)

术。是一种能够容纳文学戏剧、摄影、绘画、音乐、舞蹈、文字、雕塑、建筑等多种艺术的综合艺术,但它又拥有独特的艺术特征。

随着社会的发展,人们生活水平以及对物质享受的提高,尤其是3D影片的问世,促使群众对观看电影的视觉效果也在不断提高。由于对观看影片时的氛围、音效、视觉效果的要求,使大量的观众开始由在家中看碟转向去影城看电影。近年来去影城看电影的观众人数越来越多,从而就引发了电影票订购的难以问题。

计算机的出现给人类社会带来了第三次工业革命,计算机和计算机网络已经深入到了各行各业,各个领域,随着Internet的不断扩大和发展,电脑网络“把每一个国家、每一个城市甚至每一个家庭连接到一起”。21世纪是个信息化的时代,现代计算机技术的发展,为各行各业的发展创造了一个全新的时代背景,人们的生活、工作等已经越来越离不开计算机科学的运用。

目前一般大众可以经由网际网络进行许多商业活动,例如购书、订花、购物、游戏等,其中也包含订票(例如机票、火车票、音乐剧入场券等)。其中,在电影院方面也有业者推动相关服务,如:华纳威秀、环球影城、国宾戏院等,已开始使用网际网络提供观众放映影片相关资讯,如场次时间表、影片预告及简介、电影院资讯等。

随着企业供应链电子商务、国际电子商务的发展,将带动电子商务服务业的发展,围绕电子商务服务形成的从低端技术环节到中端支撑环节再到高端应用环节的电子商务服务链在我国结点饱满,一个全新视角的电子商务服务业群正在形成,将成为未来国民经济新的增长点。

1.3 网上影院订票系统的意义

网上影院订票系统,把票券信息流(提供给用户的各种票券的信息,如机票、船票、公共汽车票的各种信息等)、商务流(由票券交易中伴随的购、销活动以及票券所有权的变化等一系列活动构成,商务流实现了实物所有权的交换)、以及资金流(在电子商务活动中,资金包括现金、支票甚至有价证券等等,是资金流的主要处理对象,它和付款、转帐等一系列处理过程真正构成了一个完整资金流。资金流实现了“资金”所有权的交换。)三种电子商务模型有机地结合起来,它具有传统的人工订票系统所不可比拟的优越性:

首先,它利用互联网的便利性,使人们可以实时地在线选购自己需要的旅游票券。这样避免了传统购票方式给人们带来的长途奔波、长时间排队的疲劳。

其次,网上订票系统将人们实际的购票模式通过网络形象地模拟出来,人们在网上订票时如身临其境,并且能在任何时间选择自己所需的电影票券,这包括影片的类型、场次、座位等。

再次,网上订票系统可以大大降低实际购票交易时间,提高工作效率。

2

毕业设计(论文)

最后,网上订票系统可以及时地将数据信息完全共享给用户,用户无需再通过电话查询便可得到想要的具体票务信息,这样不仅提高了企业的服务质量,且更实际地解决了售票处/代售点电话咨询、场次表查询、订票等业务受理等问题,从而提高用户对服务的满意度。

3

毕业设计(论文)

第二章 系统分析

2.1 系统需求分析

网上订票系统需要满足如下需求:

1、 展示网站的影片信息,用户可进行浏览正在上映和即将上映的影片

信息

2、 可以根据不同条件查询本网上影院的影片场次时间 3、 可以查看单部影片的详细信息和场次时间

4、 选择影片和座位进行订票并得到订票信息,系统会发送含有订票信

息的Email到用户的邮箱

5、 可在用户中心查看订票信息和进行退票操作 6、 可在用户中心修改用户信息,登录密码和上传头像 7、 后台管理可对用户进行查询,添加,修改,删除的管理 8、 后台管理可对影片进行查询,添加,修改,删除的管理 9、 后台影片管理可添加新影片语言,类别,版本

10、 后台管理可对场次进行查询,添加,修改,删除的管理

11、 后台可对前台页面的广告进行广告以及友情链接信息进行维护和更

换管理

12、 后台可对管理员进行查询,添加,修改,删除的管理及管理员的权

限管理

13、 系统深入考虑数据操作效率和数据安全等因素 14、 系统运行稳定,对不同权限有限制,安全可靠

2.2 系统功能分析

基于系统需求分析,网上影院订票系统分为前台和后台,下面分别对一些主要功能模块进行详细说明。

1、 用户登录、注册及注销

(1) 用户注册:用户邮箱格式与唯一验证,用户密码验证,验证码验证。 (2) 用户登录:系统通过Cookie检验是否自动登录,并且将用户信息临

时储存在服务器中以便使用。

(3) 用户注销:删除用户在服务器中的临时信息。 2、 影片信息浏览

(1) 用户可浏览正在热播与即将上映的影片 (2) 用户可查看影片的详细信息

4

毕业设计(论文)

3、 影片场次查询

(1) 用户可按照影片名查询场次 (2) 用户可按照时间段查询场次 (3) 用户可按照版本分类查询场次 4、 选座订票处理

(1) 用户可自选座位(一次订票最多4张票) (2) 确认订票信息,执行订票

(3) 订票后,系统自动发送用户订票信息到用户邮箱 5、 用户中心

(1) 显示用户交易提醒和近期影片推荐

(2) 我的订单:显示我的电影订单,并可对可退票的订单进行退票操作;

退票成功后,系统自动发送用户退票信息到用户邮箱 (3) 编辑个人信息:可对基本信息进行修改,也可修改用户头像 (4) 密码修改:可对用户密码进行修改 6、 管理员登录

(1) 通过管理员信息及验证码验证,将管理员信息临时储存在服务器中以便使用。 7、 影片管理

(1) 可对新片进行录入操作 (2) 可按影片名对影片进行搜索操作 (3) 可对影片信息进行修改及删除操作 (4) 可添加新影片语言,类别,版本 8、 场次管理

(1) 可对场次进行录入操作

(2) 可通过场次时间范围对场次进行搜索操作 (3) 可对场次信息进行修改及删除操作 9、 票务管理

(1) 可根据订单号查用户订票信息 10、 用户管理 (1) 可对用户进行添加操作

(2) 可通过用户名对用户进行搜索操作 (3) 可对用户信息进行修改及删除操作 11、 广告管理

(1) 管理员可对前台页面的广告及连接地址进行更换 12、 管理员管理

5

毕业设计(论文)

(1) 可对管理员进行添加操作 (2) 可对管理员进行查询操作 (3) 可对管理员进行修改及删除操作 (4) 可对管理员进行权限的管理

2.3 系统开发工具 2.3.1 MyEclipse9.0

本系统是采用MyEclipse9.0为平台开发实现的。

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。

在结构上,MyEclipse的特征可以被分为7类:1.JavaEE模型;2.WEB开发工具;3.EJB开发工具;4.应用程序服务器的连接器;5.JavaEE项目部署服务;6.数据库服务;7.MyEclipse整合帮助;对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。MyEclipse9.0对检索功能以及错误查询功能更加强大,包括对js文件的错误查询。

2.3.2 MySQL 5.0

本系统采用MySQL5.0作为数据库。

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 MySQL拥有如下特点:

1、 支持AIX、FreeBSd、HP-UX、Linux、Mac OS、Novell Netware、

OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。

2、 为多种编程语言提供了API。这些编程语言包括C、C++、Python、

Java、Perl、PHP、Eiffel、Ruby和Tcl等。

6

毕业设计(论文)

3、 支持多线程,充分利用CPU资源。

4、 优化的SQL查询算法,有效地提高查询速度。

5、 既能够作为一个单独的应用程序应用在客户端服务器网络环境中,

也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_Jis等都可以用作数据表名和数据列名。

6、 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 7、 提供用于管理、检查、优化数据库操作的管理工具。 8、 可以处理拥有上千万条记录的大型数据库。

7

毕业设计(论文)

第三章 系统概要设计

系统设计阶段的主要任务是将需求分析阶段所总结出来的反映了用户需求的系统逻辑模型转换成可以实施的物理模型,主要解决如何去做的问题。

3.1 系统功能结构设计

影院订票网站分为前台和后台。其中,根据影院订票网站前台的特点,可以将其分为影片浏览、场次查询、选座订票、用户中心、我的订单、编辑个人信息、修改密码、订单查询、及网站广告,其中各个部分及其包括的具体功能模块如图3-1所示。

浏览影片场次查询网上影院订票系统广告信息选座订票交易提醒查看订单我的订单用户中心编辑个人信息修改密码图3-1 系统前台模块图

退票处理

根据影院订票网站的特点,可以将其分为影片管理,场次管理,用户管理,广告管理,管理员管理,权限管理,其中各个部分及其包括的具体功能模块如图3-2所示。

8

毕业设计(论文)

影片新语言的添加影片管理影片的增删改查影片新类别的添加影片新版本的添加场次管理网上影院订票系统后台用户管理票务管理广告管理管理员管理场次的增删改查用户的增删改查订单查询前台广告的修改管理员的增删改查管理员权限管理

图3-2 系统后台模块图

3.2 数据字典

数据字典的作用主要是对数据流程图中的数据项,数据结构,数据流,处理逻辑,数据存储和外部实体等方面进行具体的定义。建立数据字典的目的是为了保证全局数据的一致性和准确性[12]。数据字典配以数据流程图就可以从图形和文字两方面对系统做出完整的定义和描述。

3.2.1 数据项

1、 管理员信息表: (1) 数据项:admin_id

含义说明:唯一标识一个管理员的身份 别名:管理员序号 类型:integer (2) 数据项:admin_name

含义说明:管理员登录用户名 别名:管理员登录用户名 类型:varchar 长度:45

(3) 数据项:admin_pwd

含义说明:管理员登录密码 别名:管理员登录密码

9

毕业设计(论文)

类型:varchar 长度:45

(4) 数据项:admin_privilege

含义说明:管理员权限 别名:管理员权限 类型:varchar 长度:45 2、 版本信息表 (1) 数据项:edition_id

含义说明:唯一标识一个影片的版本 别名:影片版本序号 类型:integer (2) 数据项:edition_name

含义说明:影片版本名称 别名:影片版本名称 类型:varchar 长度:45 3、 类别信息表 (1) 数据项:kind_id

含义说明:唯一标识一个影片的种类 别名:影片种类序号 类型:interger (2) 数据项:kind_name

含义说明:影片种类名称 别名:影片种类名称 类型:varchar 长度:45 4、 语言信息表 (1) 数据项:language_id

含义说明:唯一标识一个影片的语言 别名:影片语言序号 类型:integer

(2) 数据项:language_name

含义说明:影片语言名称 别名:影片语言名称

10

毕业设计(论文)

类型:varchar 长度:45 5、 影片信息表 (1) 数据项:movie_id

含义说明:唯一标识一部影片 别名:影片序号 类型:integer (2) 数据项:movie_name

含义说明:影片名称 别名:影片名称 类型:varchar 长度:45

(3) 数据项:movie_director

含义说明:影片的导演 别名:影片导演 类型:varchar 长度:45

(4) 数据项:movie_actor

含义说明:影片的演员 别名:影片演员 类型:varchar 长度:45

(5) 数据项:movie_info

含义说明:影片的介绍信息 别名:影片介绍信息 类型:varchar 长度:500

(6) 数据项:movie_language

含义说明:影片的语言序号 别名:影片语言序号 类型:integer (7) 数据项:movie_kind

含义说明:影片的类别序号 别名:影片类型序号 类型:integer

11

毕业设计(论文)

(8) 数据项:movie_photo

含义说明:电影照片的地址 别名:电影照片的地址 类型:varchar 长度:200

(9) 数据项:movie_long

含义说明:影片的片长时间 别名:影片片长时间 类型:integer (10) 数据项:movie_date

含义说明:影片的上映日期时间 别名:影片上映日期时间 类型:timestamp (11) 数据项:movie_edition

含义说明:影片的版本序号 别名:影片版本序号 类型:integer 6、 场次信息表 (1) 数据项:play_id

含义说明:唯一标识一场的影片场次 别名:影片场次序号 类型:integer (2) 数据项:play_movie

含义说明:场次的影片序号 别名:场次影片序号 类型:integer (3) 数据项:play_time

含义说明:电影场次播放时间 别名:电影场次播放时间 类型:timestamp (4) 数据项:play_price

含义说明:电影场次票价 别名:电影场次票价 类型:double 7、 电影票信息表

12

毕业设计(论文)

(1) 数据项:ticket_id

含义说明:唯一标识一张电影票 别名:电影票的序号 类型:integer (2) 数据项:ticket_play

含义说明:电影票对应的场次序号 别名:电影票对应的场次序号 类型:integer

(3) 数据项:ticket_member

含义说明:电影票对应的用户序号 别名:电影票对应的用户序号 类型:integer (4) 数据项:ticket_code

含义说明:电影票的订单票号 别名:电影票的订单票号 类型:varchar 长度:45

(5) 数据项:ticket_seat

含义说明:电影票对应的座位号 别名:电影票对应的座位号 类型:integer (6) 数据项:ticket_price

含义说明:电影票的实际价钱 别名:电影票的实际价钱 类型:double (7) 数据项:ticket_date

含义说明:电影票订票的操作时间 别名:电影票订票的操作时间 类型:timestamp (8) 数据项:ticket_flag

含义说明:电影票是否退票标识 别名:电影票是否退票标识 类型:boolean 8、 用户信息表 (1) 数据项:member_id

13

毕业设计(论文)

含义说明:唯一标识一名用户的身份 别名:用户身份序号 类型:integer

(2) 数据项:member_email

含义说明:用户登录的电子邮箱地址 别名:用户登录的电子邮箱地址 类型:varchar 长度:45

(3) 数据项:member_pwd

含义说明:用户的登录密码 别名:用户的登录密码 类型:varchar 长度:45

(4) 数据项:member_name

含义说明:用户的姓名 别名:用户姓名 类型:varchar 长度:45

(5) 数据项:member_phone

含义说明:用户电话号码 别名:用户的电话号码 类型:varchar 长度:20

(6) 数据项:member_money

含义说明:用户拥有的金额 别名:用户拥有的金额 类型:double

(7) 数据项:member_gender

含义说明:用户性别 别名:用户性别 类型:boolean (8) 数据项:member_photo

含义说明:用户头像的地址 别名:用户头像的地址 类型:varchar

14

毕业设计(论文)

长度:200 9、 广告信息表 (1) 数据项:ad_id

含义说明:唯一标识一个广告 别名:广告的序号 类型:integer (2) 数据项:ad_img

(3) 3.2.2 1、

含义说明:广告图片的地址 别名:广告图片的地址 类型:varchar 长度:200 数据项:ad_href

含义说明:广告的链接地址 别名:广告的链接地址 类型:varchar 长度:200

数据存储与数据流图

面向用户的客户端系统流程图如图3-3所示:15

毕业设计(论文)

用户影片信息数据系统正在热播影片即将上映影片放映时刻表场次信息数据系统选择场次新用户注册用户信息数据系统检查是否登录未登录用户登录系统用户中心账号服务已登录选座订票订单管理订单信息数据系统 图3-3 面向用户的客户端系统流程图

2、 面向管理员的系统流程图如图3-4所示:

16

毕业设计(论文)

管理员管理员登录影片类型添加影片语言添加影片版本添加影片管理场次管理用户管理票务管理广告管理管理员管理影片CRUD场次CRUD用户CRUD后台数据系统订单查询管理员CRUD广告变更管理员权限管理 图3-4 面向管理员的系统流程图

3.3 数据库概念结构设计

概念模型是数据库系统的核心和基础。由于各个机器上实现的DBMS软件都是基于某种数据模型的,但是在具体机器上实现的模型都有许多严格的限制。而现实应用环境是复杂多变的,如果把现实世界中的事物直接转换为机器中的对象,就非常不方便。因此,人们研究把现实世界中的事物抽象为不依赖与具体机器的信息结构,又接近人们的思维,并具有丰富语义的概念模型,然后再把概念模型转换为具体的机器上DBMS支持的数据模型。概念模型的描述工具通常是使用E-R模型图。该模型不依赖于具体的硬件环境和DBMS。

17

毕业设计(论文)

概念结构是对现实世界的一种抽象。所谓抽象是对实际的人,物,事和概念进行人为处理,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确的加以描述,这些概念组成了某种模型[8]。通过概念设计得到的概念模型是从现实世界的角度对所要解决的问题的描述,不依赖于具体的硬件环境和DBMS。

数据关系图如图3-5所示:

图3-5 动态广告图

3.4 数据库逻辑结构设计

根据数据库需求分析,本系统的数据表结构具体设计如下: 管理员信息表主要用来保存管理员信息。结构如表3-1所示:

表3-1 管理员信息表

字段名 admin_id admin_name admin_pwd admin_privilege

数据类型 INTEGER VARCHAR(45) VARCHAR(45) VARCHAR(45)

是否为空 No No No No

是否主键 Yes

默认值 Null

描述 管理员ID 管理员登录用户

名 管理员登录密码 管理员权限

18

毕业设计(论文)

用户信息表主要用来保存用户信息。结构如表3-2所示:

表3-2 用户信息表

字段名 member_id member_email member_pwd member_name member_phone member_money member_gender member_photo

数据类型 INTEGER VARCHAR(45) VARCHAR(45) VARCHAR(45) VARCHAR(20) DOUBLE TINYINT(1) VARCHAR(200)

是否为空 No No No Yes Yes Yes Yes Yes

是否主键 Yes

默认值 Null Null Null Null Null Null

描述 用户ID 用户邮箱 用户密码 用户姓名 用户电话 用户金额 用户性别 用户头像地址

影片版本信息表主要用来保存影片版本信息。结构如表3-3所示:

表3-3 影片版本信息表

字段名 edition_id edition_name

数据类型 INTEGER VARCHAR(45)

是否为空 No No

是否主键 Yes

默认值 Null

描述 影片版本ID 影片版本名

影片类别信息表主要用来保存影片类别信息。结构如表3-4所示:

表3-4 影片类别信息表

字段名 kind_id kind _name

数据类型 INTEGER VARCHAR(45)

是否为空 No No

是否主键 Yes

默认值 Null

描述 影片类别ID 影片类别名

影片语言信息表主要用来保存影片语言信息。结构如表3-5所示:

表3-5 影片语言信息表

字段名 language_id

数据类型 INTEGER

是否为空 No No

是否主键 Yes

默认值 Null

描述 影片语言ID 影片语言名

language _name VARCHAR(45)

19

毕业设计(论文)

影片信息表主要用来保存影片信息。结构如表3-5所示:

表3-6 影片信息表

字段名 movie_id movie_name movie_director movie_actor movie_info movie_language movie_kind movie_photo movie_long movie_date movie_edition

数据类型 INTEGER VARCHAR(45) VARCHAR(45) VARCHAR(45) VARCHAR(500) INTEGER INTEGER VARCHAR(200) INTEGER TIMESTAMP INTEGER

是否为空 No No No No No No No No No No

是否主键 Yes

默认值 Null

描述 影片ID 影片名称 影片导演 影片演员 影片信息 语言ID 类别ID 照片地址 影片片长

CURRENT_TIMESTAMP 上映日期

影片版本

影片场次信息表主要用来保存影片场次信息。结构如表3-6所示:

表3-7 影片场次信息表

字段名 play_id play_movie play_time play_price

数据类型 INTEGER INTEGER TIMESTAMP DOUBLE

是否为空 No No No

是否主键 Yes

默认值 Null

CURRENT_TIMESTAMP

描述 场次ID 影片ID 场次时间 场次价钱

20

毕业设计(论文)

电影票信息表主要用来保存电影票信息。结构如表3-7所示:

表3-8 电影票信息表

字段名 ticket_id ticket_play ticket_member ticket_code ticket_seat ticket_price ticket_date ticket_flag

数据类型 INTEGER INTEGER INTEGER VARCHAR(45) INTEGER DOUBLE TIMESTAMP TINYINT(1)

是否为空 是否主键 No No No No No No No

Yes

默认值 Null

描述 电影票ID 场次ID 用户ID 电影票号 座位号 实际票价

CURRENT_TIMESTAMP 订票时间

退票标识

广告信息表主要用来保存广告信息。结构如表3-8所示:

表3-9 广告信息表

字段名 ad_id ad_img ad_href

数据类型 INTEGER VARCHAR(200) VARCHAR(200)

是否为空 No No No

是否主键 Yes

默认值 Null

描述 广告ID 广告图片地址 广告链接地址

3.5 数据库搭建Struts2 + Spring + Hibernate

数据库搭建Struts2+Spring+Hibernate, Struts负责显示层,hibernate负责持久层,spring负责中间的业务层,这个结构是目前国内最流行的Java Web应用程序架构.另外,由于Spring使用的依赖注射以及AOP(面向方面编程),所以它的这种内部模式非常优秀,以至于Spring自己也实现了一个使用依赖注射的MVC框架,叫做Spring MVC,同时为了很好的处理事物,Spring集成了hibernate,使事物管理从Hibernate的持久层提升到了业务层,使用更加方便和强大。

Spring通过Hibernate Template提供对Hibernate的集成,这样做的主要目的是为了能够清晰地划分应用程序层次而不管使用何种数据访问和事务管理技术,从而降低各个应用程序对象之间的耦合。[7]业务逻辑不再依赖于特定的数据访问与事务策略;不再有硬编码的资源查找、不再有难以替换的singletons、不再有用户自定义的服务注册。

Spring提供了一个简单且稳固的方案使得各种应用逻辑对象连接在一起,使

21

毕业设计(论文)

这些对象可重用,并尽可能不依赖容器。所有的数据访问技术都能独立使用,但是他们在Spring提供的基于XML配置且无需依赖Spring的普通JavaBean下会与application Context整合的更好[13]。在典型的Spring应用程序中,很多重要的对象都是JavaBeans:数据访问template、数据访问对象(使用template)、事务管理器、业务逻辑对象(使用数据访问对象和事务管理器)、web视图解析器、web控制器(使用业务服务)等等。

为了避免硬编码的资源查找与应用程序对象紧密耦合,Spring允许你在Spring容器中以bean的方式定义诸如JDBC DataSource或者Hibernate SessionFactory 的数据访问资源。任何需要进行资源访问的应用程序对象只需要持有这些事先定义好的实例的引用就可以了。

相应配置文件如下: web.xml:

xmlns=\

xmlns:web=\

xsi:schemaLocation=\http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd\

contextConfigLocation

classpath:/applicationContext-*.xml

org.springframework.web.context.ContextLoaderListener

com.listener.Init version=\>

天仁电影

choose.jsp

22

毕业设计(论文)

com.listener.OnlineMemberListener

OpessSessionInViewFilter

org.springframework.orm.hibernate3.support.OpenSessionInViewFilter

OpessSessionInViewFilter /*

encodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding utf-8

encodingFilter /*

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2 *.action

23

毕业设计(论文)

strutsFilterDispatcher

org.apache.struts2.dispatcher.FilterDispatcher

strutsFilterDispatcher /*

securityFilter com.filter.SecurityFilter

securityFilter *.jsp

24

毕业设计(论文)

第四章 系统详细设计与实现

系统详细设计的任务是在系统总体设计的指导下,对系统各组成部分进行细致具体的物理设计,使系统总体设计阶段所作的各种决定具体化。在电子商务网站详细设计阶段,主要完成如下工作:代码设计,界面设计,前后台的设计等。

本系统由:用户登录注册模块(用户登录,用户注册)、用户中心模块

4.1 网站首页

本网站首页简约大方,其作用是整体的展示了本电子商务网站的主题内容及影片的展示,布局简洁明了,易于用户订票。页面有好,在特效的渲染下,简洁而不失大气的首页给人留下炫丽的印象。首页分为上中下三部分,上部分是主导航栏,用户可以通过此处找到喜好的影片,继而订票。网站的LOGO呈动态滚动效果,更为画面添加了活力。中间部分分为主要影片展示及网站广告宣传,其中影片展示部分分为正在热播和即将上映的影片介绍。下部分是一些网站信息和使用帮助。网站首页如图4-1所示:

图4-1 网站首页图

25

毕业设计(论文)

4.1.1 头部导航栏

头部的导航栏可以进行登录注册的操作,更主要帮助用户根据自己的需求,快速找到自己喜好的影片及上映场次时刻表,动态滚动的LOGO设计让用户有一种耳目一新的感觉。在LOGO旁边,用户可根据影片名找到上映的场次,进而进行购票。在展示本网站影片的同时还能给用户留下新颖友好的印象,可谓一举两得。

头部导航栏如图4-2所示:

图4-2 头部导航栏图

4.1.2 中间部分

中间部分主要直观地展现本网站的正在热播和即将上映的影片。周围的广告展现对影片及对本网站的宣传作用。

动态广告如图4-3所示:

图4-2 动态广告图

正在热播和即将上映的影片如图4-4所示:

26

毕业设计(论文)

图4-4 正在热播及即将上映的影片图

4.1.3 页面下面部分

页面下部是大多数电子商务网站常见的部分,用于显示一些网站的信息和反映网站中一些常见问题,进行一些超链接,链接其他的页面。

页面下部如图4-5所示:

图4-5 页面下部图

27

毕业设计(论文)

4.2 电影展示页面

电影展示页面展示了本网站的正在热播和即将上映的影片,通过分页技术处理,每八部影片分为一页,展示每部影片的主要信息。用户可通过此功能进行购票操作。

影片分页展示如图4-6,图4-7所示:

图4-6 影片分页展示图

28

毕业设计(论文)

图4-7 影片分页展示图

4.3 放映时刻表页面

放映时刻表显示当天和明天要播放的影片场次,用户可通过此路径找到想要观看的影片场次,进行订票。

放映时刻表如图4-8所示:

图4-8 放映时刻表页面图

用户可根据不同的日期,不同的影片,不同的时间,不同的版本筛选影片场次,大大提高了用户进行订票的效率,缩短了订票时间。

29

毕业设计(论文)

根据多条件选择场次如图4-9所示:

图4-8 多条件选择场次图

4.4 单部影片详细展示页面

单部影片页面可通过首页,电影,上映时刻表页面点击相应影片连接到此页面。此页面显示影片的详细介绍信息,包括影片海报、影片名、导演、主演、类型、片长、上映日期、剧情简介,及上映的场次时刻,同时也可根据用户需要的不同日期,不同时间,不同版本进行筛选。

单部影片页面如图4-9所示:

30

毕业设计(论文)

图4-8 单部影片详细展示图

以上是用户未登录时都可浏览的,如果未登录时点击“我要购票”,页面会自动跳转到登录页面,登录后会继续用户所选的场次进行订票操作。

4.5 登录页面

系统登录页面是本网站中一个重要的模块。此模块主要功能为对用户的身份进行验证,并且将用户的部分信息储存在服务器上以便使用。登录页面包括账号、密码的验证,和30天内自动登录的设置。

系统登录界面如图4-9所示:

31

毕业设计(论文) 图4-9 登录界面图

账号是用户注册时的邮箱地址,邮箱地址格式通过js脚本语言的正则表达式进行格式验证,如果格式不正确,页面会提示信息。如图4-10所示:

图4-10 邮箱格式不正确提示信息图

点击“登录”按钮之后表单提交到后台处理,后台从数据库取值,检查用户名密码匹配与否,如果匹配则成功登录主界面并且将用户的信息储存到服务器的临时变量(session)中,在登录成功后系统将该用户的登录信息储存到服务器中,为系统的其他功能服务,减少数据库查询次数,有效地提高了系统效率[3]。

如果不匹配及登录失败,则页面会有相应提示。此过程是通过AJAX技术,后台查询数据库,返回登录正确与否的信息至页面,对页面的进行局部刷新,大大提高了网站的运行效率。

登录失败如图4-11所示:

图4-10 登录失败提示信息图

本网站登录模块,还设立了“30天内自动登录”的设置,运用Cookie技术,在客户端保存用户登录信息,方便用户以后进入网站购票,免除了登录的繁琐操作,提高了用户操作的便利性。

本系统考虑到系统的安全性。采用了单点登录验证,在一个用户登录到登出

32

毕业设计(论文)

的时间内,这个账号不能在除本机外任何机器上再次登录。此功能是通过在线列表(application)实现的,将已经登录的用户放入一个List集合中。如果这个集合中有某个用户的对象说明该用户已经在线,不可以再次登录,用户登录超时后或用户登出的时候在线列表会自动移除该用户的账号[2]。重复登录时,系统会通过AJAX提示信息如图4-11所示:

图4-11 重复登录提示信息图

如果用户尚未注册成为本网站的用户,则可点击“立即注册”进行注册操作。

4.6 注册页面

注册页面表单有电子邮箱,性别,创建登录密码,确认登录密码,验证码这几项,邮箱唯一性和验证码的正确性都是通过AJAX技术与后台进行交互,使页面局部刷新。邮箱的格式和填写完整校验是通过js脚本完成的。未填信息和填写信息不合法时,立即注册按钮为不可用状态,当注册信息都填写正确后,立即注册按钮将为可用状态,注册页面如图4-12所示:

图4-12 注册页面图

4.7 选座订票页面

选座订票模块是本网站的核心模块,也是用户最终的目的所在。如同4-13

33

毕业设计(论文)

所示,蓝色座位为可选的座位,紫色座位为已售出的座位,红色座位为用户选择的座位。页面下方有用户选择的座位号,通过js脚本及时显示。点击“重选座位”按钮,则会刷新最新的座位情况。点击“选好了,下一步”按钮,会跳转下一步要操作的页面。

图4-13 选座订票图

为防止用户滥选,选票数量通过js脚本控制在一次购票数量最多选4张票,如图4-14所示:

34

本文来源:https://www.bwwdw.com/article/gvh6.html

Top