基于JAVA的电影选票系统.docx
- 文档编号:14435704
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:26
- 大小:186.10KB
基于JAVA的电影选票系统.docx
《基于JAVA的电影选票系统.docx》由会员分享,可在线阅读,更多相关《基于JAVA的电影选票系统.docx(26页珍藏版)》请在冰点文库上搜索。
基于JAVA的电影选票系统
基于JAVA的电影选票系统
————————————————————————————————作者:
————————————————————————————————日期:
中国矿业大学专业综合训练任务书
学院:
信息科学与工程学院系级教学单位:
计算机科学与工程系
地点
信息馆317(或318)
题目
基于JAVA的电影选票系统
主
要
内
容
1.设计数据库结构,建立连接,实现登陆注册页面。
2.根据电影选票系统的功能要求,实现电影票查询及购买功能..。
3.为更好的体现该系统的人性化,实现消费充值、订单管理及评论功能。
4.后期测试及相关文档的编写.。
基
本
要
求
1.查阅、学习数据库方面的基本知识。
2.开发工具:
Java1.7及JDK等。
3.熟练使用eclipse工具.。
4.完整的系统,有各种测试用例。
摘要
面对全球性的电影观看热潮,加上大众对视觉效果和环境的需求,
电影院独有的互动效果和场内气氛吸引了越来越多的观众。
传统的影院售票采用人工售票的方法,而且方法不仅效率低,而且容易出错。
为了满足影院对售票业务进行高效的管理,以及方便用户查看订票,采用计算机数据和网络技术开发一个影院售票系统,显得非常的必要。
论文阐述了电影购票系统网站的开发过程,并对该系统的需求分析及系统需要实现的设计方法作了介绍。
该系统的基本功能主要包括用户查询并购买电影、余额充值、订单管理以及影评。
在电影购票系统网站中,顾客能够方便的进行用户注册,查看电影。
顾客购买完影票后,会得到系统自动分配的一个唯一的订单号,以方便顾客随时查询订单处理情况。
观后还可以进行影评,方便了广大用户反馈意见。
关键词 电影票查询;余额充值;电影评论;电影票购买;
4.6观后影评27
第1章专业综合训练概述
1.1实训目标
本次专业综合训练的题目是基于JAVA的电影购票系统,目的在于对Java应用系统(问题)进行充分地调研分析,完成软件系统的详细设计和开发实现,实训主要围绕着Java应用层开发,在学生具备了Java程序设计知识与面向对象技术的基础上,为进一步提高项目实践能力、开拓创新能力而设置的实践性环节课程,提高学员学习兴趣,以及培养学员参与的主动性,使学员真正能学习到相关行业前沿知识与技能,并且学以致用,在提高学生动手实践能力的同时,扩大知识面,达到由被动到主动的心态转变。
进而达到院校与企业共同培养高素质、高技能的专业实践型的人才的需求,使学生进入企业后能快速适应和掌握项目工程实践开发技术的能力。
1.2实训内容
1.系统需求分析
2.数据库设计(sqlite)
3.系统重难点讲解
4.程序实现
5.对学生作品评价打分
1.3实训时间
根据学校情况进行安排,从8月31号到9月11日进行了统一实训,期间根据学校安排对实训时间进行了相应的调整。
1.4实训要求及设计技术
实训期间需要能提供全天上机的机房,并且要求实训人数在200人以内,机房电脑硬件配置需要:
4G以上内存,20G或以上分区空闲空间;软件环境要求:
JDK1.6版本以上、Eclipse不限版本。
sqlite数据库、javaSE基础知识、GUI、面向对象知识
1.5实训计划
前六天
9.8
9.9
9.10
9.11
上午
下午
上午
下午
上午
下午
上午
下午
上午
下午
观看视频
观看视频
观看视频
登陆页面的设计
注册页面的设计
查询电影票功能的设计
购买电影票功能的设计
充值功能的设计
订单管理功能的设计
评论功能的设计
完成相关文档和系统的完善
第2章需求分析
2.1课题背景
随着经济的发展,人们生活质量提高了,娱乐方式也日新月异。
电影不再是“奢侈品”,而是人们日常生活中休闲娱乐必备的商业产物。
在这个网络信息化浓厚的时代,网络成为主要的通讯手段。
当代网络如此发达,也有不少基于Web的电影院网站,如深圳太阳数码影城、Mtime时光网。
他们多用JSP实现动态网站制作。
JSP将网页的设计同网页的后台逻辑分离,是支持可重用的基于组件的设计。
但是JSP的组件不够丰富,要实现特殊功能的控件,如用户打分的可拖拉五角星打分条,没有现成的组件,编写制作起来非常复杂麻烦。
信息时代信息时代的今天,我们感受到计算机科学日新月异的气息日渐膨胀。
如此,信息的传播途径与传递方式也随之丰富多彩。
发展日渐成熟的计算机网络承载着大量信息的流通任务,人们的生活也越来越依靠网络。
在日常娱乐商品中,电影成为丰富精神生活的佳品。
而如今信息流逝太快,传统媒体不能对影院起到较高效的宣传与展示,电影文化只存在于纸张和胶片中使其传播力度受到局限。
由此一来,人们不易在第一时间获知影院动态,许多精彩的电影信息得不到广泛交流,得不到有效的定格,人们想要了解详细的、日志性的影院信息可能也无从下手。
我们要利用发达的网络,利用时新的技术,构建起一个基于Web的影院信息管理系统。
这样,各大影院就可以合理规划电影信息,展示影院文化,与客户做好充分交流,让用户感受到实时信息,使影院运营的更加流畅,获取更好的经济效益。
2.2开发环境
1、Java简介:
Java是一个可以撰写跨平台应用程序的面向对象的程序设计语言。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
2.JDK简介:
JDK是Java语音的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。
JDK(JavaDevelopmentKit)是Java语言的软件开发工具包(SDK)。
3.SQLite简介:
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。
它是D.RichardHipp建立的公有领域项目。
它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
4.Eclipse简介:
它是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具
2.3可行性分析
网络平台已经成为各个行业经营管理中不可忽视的一个重要环节,拥有一个功能强大且操作简单的电影订票网站已经成为各大影城的发展趋势。
可行性研究的目的是用尽可能小的代价在尽短时间内确定问题是否能够解决。
采用自主开发方式,系统上线后,能更有效地支持影城的运行,所产生的效益远远大约开发花销,即在经济可行性分析结果是可行的。
对于影城管理,本系统使用JAVA1.7与SQLlite数据库,实施本系统只需企业内部接入互联网,配合使用先进的数据库管理技术和服务器管理技术,该系统能完全实现电影订票网站需要的各项功能,所以技术上可行。
本系统充分考虑管理人员的使用习惯,操作简单明了。
订票及评论的管理迅速可靠。
尽可能减少操作人员的操作,并且有很强的可扩充性。
所以操作可行性。
2.4功能描述
不少基于Web的电影院网站,如深圳太阳数码影城、Mtime时光网、等。
他们多用JSP实现动态网站制作。
大体上面的功能就是登陆注册页面,查询购买影票功能,还有订单管理,影片管理功能,但是对于用户余额充值以及观后评论功能页面的不是很重视,要么放在不显眼的地方,要么余额充值跳转到其余网站,令用户不是很方便。
而本系统为一个电影购票系统,其中包含了一般电影购票系统的登陆注册、查询影票,购买影票,以及用户余额的充值、订单的管理,影片的管理,还特别添加了用户余额的充值、观后评论的功能界面,并将其放于显眼位置,便于用户发现并使用,使整个电影购票系统更加人性化。
2.5本章小结
本章先介绍了一下课题背景,详细描述了一下本系统是在什么背景下研究的。
然后将本系统的开发背景Java1.7、JDK和sqlite数据库等做了简要介绍。
接着我们对此电影购票系统进行了可行性分析,通过经济可行性,技术可行性,操作可行性三方面进行了简要论证,并得出了肯定结果。
最后对比其余电影购票系统,然后进行了本系统的功能描述。
第3章总体设计
3.1系统总体(模块)结构
图3.1总体功能图
本电影购票系统登录人员分俩种,管理人员和普通用户,管理人员登陆成功后,可以有查看订票信息、管理电影票、管理注册用户、管理电影信息、管理影评灯功能;普通用户登陆后,可以浏览电影信息、查询电影、提交订票信息、余额充值、登录注册、添加影评等功能。
3.2数据库设计
数据库表的建立则是用户信息表、影片类别表、影片语言表、影片信息表、影片场次信息表、电影票信息表、影院表等表的建立,通过查询资料和自己思考整理出来7个表,并用于电影购票系统的编码,其建立完成如下表。
表3.1用户信息表USER
字段
类型
是否为空
主键
外键
描述
user_id
int
No
是
用户ID
user_email
varchar
No
用户邮箱
user_pwd
varchar
No
用户密码
user_name
varchar
Yes
用户姓名
user_phone
varchar
Yes
用户电话
user_money
double
Yes
用户金额
user_gender
tinyint
Yes
用户性别
表3.2影片类别表FTYPE
字段
类型
是否为空
主键
外键
描述
kind_id
int
No
是
影片类别ID
kind_email
varchar
No
影片类型名
表格3.3影片语言表LANGUAGE
字段
类型
是否为空
主键
外键
描述
language_id
int
No
是
影片语言ID
language_name
varchar
No
影片语言名
表3.4影片信息表MOVIE
字段
类型
是否为空
主键
外键
描述
movie_id
int
No
是
影片ID
movie_name
varchar
No
影片名称
movie_actor
varchar
No
影片演员
movie_info
varchar
No
影片信息
movie_langua
int
No
语言ID
movie_kind
int
No
类别ID
movie_long
int
No
影片片长
movie_date
varchar
上映日期
表3.5影片场次信息表
字段
类型
是否为空
主键
外键
描述
play_id
int
No
是
场次ID
play_movie
int
No
影片ID
play_time
varchar
场次时间
play_price
double
No
场次价格
play_address
int
No
影院ID
表3.6电影票信息表
字段
类型
是否为空
主键
外键
描述
ticket_id
int
No
是
电影票ID
ticket_play
int
No
场次ID
ticket_user
int
No
用户ID
ticket_code
varchar
No
电影票号
ticket_seat
int
No
座位号
ticket_price
double
No
实际票价
ticket_date
varchar
订票时间
ticket_flag
tinyint
No
退票标识
表3.7影院表
字段
类型
是否为空
主键
外键
描述
cinema_id
int
No
是
影院ID
cinema_name
varchar
No
影院名
3.3系统流程(数据流图)
图3.3.1系统操作流程图
此系统流程图就是简要介绍一下操作流程,首先你进入系统主界面,然后可以选择进入登陆或者注册页面,然后输入密码,检查一下密码,错误则返回;正确则进入功能界面,然后进行功能选择。
3.4系统架构设计
图3.4系统架构图
总体来看,此次JAVA电影购票系统,先建立了一个初步CLASS即Star项目,然后连接数据库,接着在建立登陆和注册功能,即图中的UserDbReg还有UserDbLink,接下来就是各种需要实现的功能,接下来先建立的是查询电影和购买功能,即图中的BugMove然后就是充值和评论等扩充的功能,例如图中的Comment等。
期间还有一些辅导类的代码,穿插其中,最后得到完整的系统源代码。
3.5本章小结
这节首先介绍了一下系统总体结构,讲述一下总体功能图,接下来介绍了一下系统操作的流程图,然后将数据库表如何设计以及详细成果做了一下介绍,最后介绍了一下系统架构设计。
第4章详细设计和编码
4.1登录页面
图4.1.1登陆页面截图
功能描述:
该功能就是进行用户的登陆,按照要求输入1,即
可进入用户登陆页面。
操作流程图:
图4.1.2登陆操作流程图
核心代码:
System.out.println("请输入用户名:
");
Scannerscanner=newScanner(System.in);
StringuserName=scanner.next();
System.out.println("请输入密码:
");
StringuserPwd=scanner.next();
//调用登陆数据库验证方法
//userInfo--返回值告诉你成功失败(0或1)
USERdbuserDbKink=newUSERdb();
userDbKink.name=userName;
u
serDbKink.mima=userPwd;
intiresul=userDbKink.list();
if(iresul==1){
System.out.println("数据库验证成功");
}else{
System.out.println("登录失败");
4.2注册模块
图4.2.1注册页面图
功能描述:
该功能就是进行用户的注册,按照要求输入2,即可进入用户注册页面。
操作流程图:
图4.2.2注册操作流程图
核心代码:
System.out.println("请输入要注册的ID");
Scannerscanner=newScanner(System.in);
longuserid=scanner.nextInt();
System.out.println("请输入用户名");
StringuserName=scanner.next();
System.out.println("请输入密码");
StringuserPwd=scanner.next();
//连接数据库
UserDbReguserDbReg=newUserDbReg();
UserDbReg.id=userid;
UserDbReg.name=userName;
UserDbReg.mima=userPwd;
intnum=userDbReg.userRegLink();
if(num==0){
System.out.println("注册失败");
}else{
if(num==1){
System.out.println("注册完成");
}
else{
System.out.println("注册成功");
4.3查询影票模块
图4.3.1查询影票截图
功能描述:
该功能就是进行影票的查询,按照要求输入1,即可进入用户查询影票页面。
操作流程图:
图4.3.2查询操作流程图
核心代码:
List
USERmovie=null;
Connectionconn=null;
try{
Class.forName("org.sqlite.JDBC");
conn=DriverManager.getConnection("jdbc:
sqlite:
e:
/movie.db");
Statementsm=conn.createStatement();
Stringstring="select*fromCINEMA";
ResultSetrs=sm.executeQuery(string);
while(rs.next()){
movie=newUSER(rs.getLong
(1),rs.getString
(2),rs.getLong(3),rs.getLong(4),rs.getString(5),rs.getString(6),);
list.add(movie);
}
4.4购买影票模块
图4.4.1购买影票截图
功能描述:
该功能就是进行影票的购买,按照要求输入1,即可进入用户购买影票页面。
操作流程图:
4.4.2购买操作流程图
核心代码:
string="selectmovie_pricefromCINEMAwheremovie_id="+id;
rs=sm.executeQuery(string);
longprice=rs.getLong("movie_price");
string="updateUSERsetuser_balance=user_balance-"+price+"whereuser_id="+ming;
intresult1=sm.executeUpdate(string);
string="selectuser_balancefromUSERwhereuser_id="+ming;
rs=sm.executeQuery(string);
if(rs.getLong("user_balance")<0){
return"账户余额不足";
}
}catch(ClassNotFoundExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}finally{
try{
if(conn!
=null){
conn.close();
}
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}return"购票成功";
4.5余额充值
图4.5.1余额充值截图
功能描述:
该功能就是进行余额的充值,按照要求输入2,即可进入用户充值页面。
操作流程图:
4.5.2余额操作流程图
核心代码:
System.out.println("请输入要充值的金额");
Scannerscanner1=newScanner(System.in);
qian=scanner1.nextInt();
UserAlluserAll=newUserAll();
userAll.money=qian;
userAll.name=mizi;
userAll.topup();
System.out.println("充值成功");
4.6观后影评
图4.6.1影评截图
功能描述:
该功能就是进行观后的影评,按照要求输入4,即可进入用户评论页面。
操作流程图:
4.6.1影评操作流程图
核心代码:
publicintid;
publicStringname;
publicStringmoviename;
publicStringcomment;
publicvoidmycomment(){
UserOdermovie=null;
Connectionconn=null;
try{
Class.forName("org.sqlite.JDBC");
conn=DriverManager.getConnection("jdbc:
sqlite:
e:
/movie.db");
Statementsm=conn.createStatement();
Stringstring="selectuser_namefromUSERwhereuser_id="+id+"";
ResultSetrs=sm.executeQuery(string);
name=rs.getString("user_name");
string="insertintoREVIEW(movie_name,user_name,review)values('"+moviename+"','"+name+"','"+comment+"')";
intiresulyt=sm.executeUpdate(string);
4.7本章小结
本章先设计了登陆和注册页面,等登陆页面设计好的话,接下来开始设计查询、购买电影票功能,然后设计扩充功能余额充值和影评,这俩个功能由于是扩充的,所以编码的较为详细,这一节就是详细编码各个功能模块。
第5章软件测试
5.1软件测试方面错误展示
登陆密码失败:
由于账号密码错误展示出的错误提示,如下图5.1
图5.1登陆失败截图
购买电影余额不足:
由于账号中没有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JAVA 电影 选票 系统