1.1研究背景
时代总是在不断进步的,现在的时代就是一个手机和电脑时代,使用手机和电脑在网络上进行一系列取代实体店的活动,是非常方便的,使用电脑和手机早就已经是一种常态了。
现代人工作繁忙,生活节奏快,往往为了节省时间,就会选择通过网络进行一些事情,例如通过网络预定电影。在线电影预购系统恰恰可以让他们轻松地通过网络预定电影,既省时又省力。在线电影预购系统的创建满足广大网民的不同需求,节省网民的时间在实体预定电影,并且通过在线电影预购系统,让用户根据自己的安排选择最适合的时间段的电影,并且能够选择自己最喜欢的电影,这提供了最大的方便,对于忙碌的网民来说。信息社会的快速发展,信息时代的响应,要求电影业提供更加优质的服务,提供更多元化的网络定票服务。
通过上述信息管理系统的日益成熟以及采集信息的情况,这个网上书店系统充分利用总体思路和应用MYSQL、JSP等技术,实现本系统的开发、设计。本系统结合计算机信息的处理能力加上系统的完整性,势必可以使人们从劳动力中解脱出来。
1.2开发目的和意义
小康时代的到来,使得人们满意度上升,生活各个方面都产生了许多变化,手机、电脑已成为人们生活中必不可少的工具。由于网络的发达与手机、电脑的普及,人们日益倾向于在网络上进行定票,而不是花时间以及精力到现实场所中购买。特别是对于那些交通不便的人,在线电影预购系统为他们提供了很大的方便,让他们对行程的安排更准确,省去很多麻烦。在线电影预购系统的出现让人们的生活向前翻了新篇章。在线电影预购系统能够给消费者提供网上订购电影票的条件,在网络日益发达的今天,它的存在是非常重要的,使用这个软件,消费者在家中或者任何地点,通过手机等电子产品轻轻松松的订购自己喜欢的电影,并可以选出自己喜欢的电影院进行观看。动态商业在线电影预购系统为人们提供了非常便利且良好的电影预购环境,人们通过这个软件,不仅可以方便快捷的预定电影,还可以看到已观看电影者对电影的评价。因此,开发在线电影预购系统,是非常重要且有意义的。
1.3 主要工作
需要作出这个在线电影预订系统需要掌握一些常用是计算机技术,第一步是对这个完整的系统做一个全方位无死角的分析,包括它的一些常用功能和一些框架技术的分析,因为通过系统的分析才能够对它有了解,所以它对于软件开发来说是一个不可或缺的一个部分,为了更好的执行这个程序必须得对这个系统的开发的认识,进行基础的研究。在进行第一步研究的时候,需要对这个系统的全部功能和使用到的相关技术进行全方位的分析,可以通过网上查找相关技术的资料,也可以问有经验的,开发过类似的人,从而筛选出更加完善和性能都要好的方案。也需要对数据库进行一些简单的分析,经过分析,觉得MYSQL更加适合这个系统的开发,最后根据功能的划分,子功能之间的联系,从而设计出E-R图,为这个系统的开发提供了很好的条件。
接下来的一步是对在线电影预订系统的具体业务进行全方面的分析设计出更加简便的业务流程,在考虑到系统的实用性,本系统采用到了JAVA技术结合MYSQL技术一起对这个系统进行开发,MYSQL的技术是一门比较成熟的技术,他可以快速存储和更快处理数据,JAVA技术更适合对页面进行动态的描述,要知道现在的JAVA技术和MYSQL技术都是比较成熟的技术,两者结合使用必定为这个系统提供了技术可行性,更好的进行了数据的存储,各种性能都是毋庸置疑的。
1.4 本文研究内容
本文主要分为六个章节,第一部分为绪论,主要介绍了课题背景、研究意义和目的,课题的主要工作以及本文研究的主要内容等。
第二部分是相关技术的介绍,主要介绍了JAVA技术MySQL数据库等。
第三部分为系统分析,主要介绍了项目规划、可行性分析、以及系统处理流程等。
第四部分是系统设计,系统架构设计和功能模块设计是主要的设计内容,详细介绍了系统的设计以及数据库的设计,ER图的设计等。
第五部分为系统实现,对本系统进行了主要功能和界面的介绍。
第六部分为系统调试与测试,对本系统进行了功能和界面的测试。
2.1 JSP技术
在线电影预订系统的开发使用到了JSP技术。尽管在程序开发过程中有很多的开发技术都能够完成Web应用程序的开发操作。像ASP技术,PHP技术,Perl和Python技术等都能实现Web应用程序的开发,之所以选择JSP技术进行在线电影预订系统的开发是因为JSP技术有其他技术没法比拟的优点。从JSP技术跨平台性来讲,它可以实现程序无需多次进行编写操作,仅仅需要编写一次,在任何平台上都可以完成程序运行操作。另外从JSP技术的响应速度这方面进行评测,我们也会发现使用JSP技术开发出来的程序是先编译后执行,然而像某些脚本语言比如说ASP或者是PHP他们是先进行解释,然后在进行执行的。生活中大量的实践告诉我们编译执行的软件程序明显要比解释执行的程序要快。JSP页面通常情况下是首次被请求执行,之后它就一直存放在服务器的内存里面,以后再被请求时,程序就直接读取存放在内存里面的已经编译过的代码,这样的设计又节省了许多时间。从稳定性层面分析JSP,我们会发现JSP几乎占有Java语言的优势,遇到程序出现异常,它能凭借本身的异常处理机制就会让程序一直稳定运行。在实现程序的MVC架构时,JSP是能够弥补Servlet的劣势的,能够让Servlet变成实用的控制器,实现业务处理逻辑在Web层耦合,轻松构建MVC架构。JSP的扩展性大到你无法想象,它能够支持Ajax的扩展还有JSP标签库等,而且JSP在程序代码上面还具有开源的优点。
2.2 B/S结构
采用B/S结构开发的在线电影预订系统能够大大方便用户使用操作,用户随时随地都可以进行在线电影预订系统的访问操作,只需要用户拥有一台会连上网络的计算机就行了,并且使用B/S 模式开发的在线电影预订系统是基于浏览器的操作方式,在与用户进行交互以及程序的表现方式上面将会更加吸引人。B/S架构技术是越来越成熟,并且使用的人数是非常多的,B/S架构这个成熟的技术主要是基于浏览器技术的一种架构,现在是非常多人使用这种结构进行开发,由于它基于浏览器这种技术,并结合各种脚本语言来进行,所以它开发起来大大提高了开发速度和降低了开发成本。B/S系统包括:逻辑层,控制逻辑层和数据表示层,这三层相对独立并且彼此相关。
如今大多数人在开发软件的时候都采用这种B/S结构,它的出现为软件开发提供优秀的结构模式,也带来了极大的便利,如今的科技迅速发展,不可能只能够在一台电脑运行,这种基于互联网模式结构技术的出现正好改变了这种现状因此基于互联网的模式逐渐发展并得到了大量应用。
B/S的最大优点是无需安装任何特殊软件即可在任何地方进行操作。只要有可以访问Internet的计算机,客户端就可以用于零维护。系统的扩展极其容易。
2.3 数据库技术
在本系统中使用到了MYSQL数据库,在很多的软件开发中都会使用到数据库来进行开发,常见的有SQL SERVLET、MYSQL等。他们所用到的数据库都是跟他们的软件项目匹配的,使用数据库可以用来操作和管理数据,可以保证更好的处理数据库,为整个系统的开发,以及数据的保护提供了一种保障的,可靠的方法,这对于开发者来说无疑是大大减少了程序开发的时间。再本系统中使用了MYSQL数据库,经检验他是可以满足系统的开发的。
MYSQL是一门成熟的数据源存储技术,他可以轻松的访问数据源,并能够告诉处理数据,这也是我选择他的原因。虽然他的规模不是很强大,但是对于本系统来说已经完全满足,而且他的规模小的话,一般来说是比较容易处理的,系统通过他也可以更好的处理数据,而且MYSQL还可以是可以多个用户一起使用。这就是他的强大之处。MYSQL具有如下特点:
(1)支持当下主流的多种系统。
(2)SQL查询语句很大程度得到了优化,提高了开发的速度
(3)TCP /IP,以及ODBC数据、JDBC数据库,并提供与其它的连接。
(4)管理工具的管理方面,同时包括控制和优化数据库操作。
(5)可以快速的记录数条数据,并且能把它储存起来。
(6)支持多用户体验式体验
2.4 HTML5技术
HTML5这个技术的出现时是用于取代在1999年那时所制定的HTML 4.01,还包括XHTML 1.0 标准的HTML标准版本,但是它现在仍处于发展阶段,并没有完全的成熟,但现在大部分浏览器在系统的设置上早已已经支持某些HTML5技术。那么它有什么特点呢?简而言之的总结HTML5有两大特点:第一个层面的特点是指强化了 Web 网页的表现性能。第二个层面的特点是指追加了本地数据库等 Web 应用的功能。当广义论及HTML5时,它们实际指的是包括HTML、CSS和java script在内的一整套必要的合理的技术组合。
当站在用户的感受和角度来说,它不仅在使用的体验和感官上达到了很好的体验。而且网页它的表现方面是极其特殊还有是极其优秀的,HTML5中的三个技术支持,其一是CSS3特效样式、其二是Canvas、其三是web的介入,以至于它不仅仅加强了网站的网页的视觉效果,而且它甚至能够让用户在网页体会一把三维立体特效。
对于开发者来说,HTML5技术的技术特点:跨平台,适配多终端。能在很大程度上减少不必要的开发的成本,解决多终端的兼容的问题。
对于搜索引擎来说,在HTML5中新增的技术标签在实际的应用里,能够让搜索引擎更加方便又快捷抓取和索引网页,从而驱动网站能得到和吸取非常多的点击流量。
3.1 系统可行性分析
3.1.1时间可行性
本次进行在线电影预订系统的开发,预留了两个月时间来完成,从系统的需求分析,功能结构设计,功能详细设计以及系统测试等环节,两个月时间是可以完成程序开发操作的,这期间也包括查阅各种资料信息,加上同学以及老师的帮助和指点,相信程序开发的时间也会缩短不少。所以时间上是可行的。
3.1.2技术可行性
在线电影预订系统主要采用JAVA和MYSQL数据库作为设计工具,学习起来非常容易并且使用便利。
(1)JAVA这门语言在当下是很热门的一门语言,通常大多数人都会用它作为后台语言开发的首选,它具有很多优秀的性能和各种服务方便了我们的快速开发和实现我们所需要的功能。整个系统帮用户完成了相当大部分不重要的琐碎事务。
综上所述,在线电影预订系统在开发技术上具有相当高可执行可能性,在开发人员掌握了一定的开发技术的这种情况下,开发本系统在我的能力范围。
3.1.3 经济可行性
从经济许可上分析,系统开发需求成本并不需要多高,而且采用开源码,降低了开发成本,而且系统设计一旦完成,就能立即运行。而且他对电脑的需求配置不高,普通的一台电脑就可以实现满足他的运行,所以,从经济可行性分析来看,这个在线电影预订系统是可以开发的。
3.1.4操作可行性
本系统是一个在线电影预订系统,是Web技术应用于网上发表,浏览的产物。系统操作简单,主要是界面操作。点击相应的按钮,执行相应的操作,操作过程与其他管理软件基本相同。所以适合各类的人员使用,操作简单,界面清晰。
3.1.5法律可行性
在线电影预订系统在很多开发的技术上和资料上的使用都是合法的,而且本系统完完全全是自己设计的,并不会涉及到其他系统的一些知识产权等问题,所以在开发过程中是完全不会侵权而产生的纠纷。
3.2系统处理流程设计
3.2.1系统开发流程
不管是做任何周密的事情都必定要事先制定好详细的计划,不然在进行的过程中救护杂乱无章,不仅如此,我们还会遇到各种的意想不到的困扰,而这些问题极有可能致命,甚至是直接导致一场空的结果。因此,这个在线电影预订系统的开发也是有对应的流程,开发之前必须要进行用户功能需求的分析,最后根据功能需求进行系统设计还有数据库相关数据的设计工作,此次开发的在线电影
4.2.3 数据库表设计
数据库里面的数据表存放的就是各种数据记录,我们在进行系统增删改查操作时,其实也就是在对应数据表里面进行的增删改查操作,一个好的数据库是要做到能够缩短信息处理时间,所以说数据库的设计工作是不容小觑的,数据库里面设置哪些表,表里面的字段设计以及字段类型和字段长度等信息都要考虑周到才行,比如时间这个字段,它的数据类型就不能是int型,不然在系统操作中就会弹出输入数据格式不符合要求的报错提示。下面简单介绍在线电影预订系统的一些数据表。
表4-1用户表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 32 | 是 | 否 | 用户id |
loginName | varcahr | 255 | 否 | 是 | 用户登录名 |
nickName | varcahr | 255 | 否 | 是 | 用户昵称 |
phone | varcahr | 255 | 否 | 是 | 用户电话 |
auto | varcahr | 255 | 否 | 是 | 用户权限 |
password | varcahr | 255 | 否 | 是 | 登录密码 |
| varcahr | 255 | 否 | 是 | 邮箱 |
money | varcahr | 255 | 否 | 是 | 钱包余额 |
表4-2 电影表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 32 | 是 | 否 | 电影id |
name | varcahr | 255 | 否 | 是 | 电影名 |
summary | varcahr | 255 | 否 | 是 | 电影简介 |
tmes | varcahr | 255 | 否 | 是 | 电影时长 |
url | varcahr | 255 | 否 | 是 | 电影图片 |
表4-3电影院表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 32 | 是 | 否 | 用户id |
name | varcahr | 255 | 否 | 是 | 电影院名 |
address | varcahr | 255 | 否 | 是 | 地址 |
表4-4影厅表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 32 | 是 | 否 | 影厅id |
name | varcahr | 255 | 否 | 是 | 影厅名 |
rows | varcahr | 255 | 否 | 是 | 排数 |
cols | varcahr | 255 | 否 | 是 | 座位数 |
cinemaid | int | 255 | 否 | 是 | 所属影院id |
表4-5排片表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
mid | int | 11 | 是 | 否 | 排片id |
c_id | int | 11 | 否 | 是 | 电影院id |
m_id | int | 11 | 否 | 是 | 电影id |
mh_id | int | 11 | 否 | 是 | 影厅id |
start_time | varcahr | 255 | 否 | 是 | 开始时间 |
end_time | varcahr | 255 | 否 | 是 | 结束时间 |
money | varcahr | 255 | 否 | 是 | 价格 |
表4-6评论表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 11 | 是 | 否 | 评论id |
u_id | int | 11 | 否 | 是 | 用户id |
content | varcahr | 255 | 否 | 是 | 内容 |
date | varcahr | 255 | 否 | 是 | 日期 |
movie_id | int | 11 | 否 | 是 | 电影id |
表4-7订单表
字段名称 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 11 | 是 | 否 | 订单id |
u_id | int | 11 | 否 | 是 | 用户id |
mr_id | varcahr | 255 | 否 | 是 | 排片id |
status | varcahr | 255 | 否 | 是 | 状态 |
date | varcahr | 255 | 否 | 是 | 日期 |