《基于JAVA的电影选票系统(共32页).doc》由会员分享,可在线阅读,更多相关《基于JAVA的电影选票系统(共32页).doc(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上中国矿业大学专业综合训练任务书学院:信息科学与工程学院 系级教学单位:计算机科学与工程系 地点信息馆317(或318)题目基于JAVA的电影选票系统主要内容1. 设计数据库结构,建立连接,实现登陆注册页面。2. 根据电影选票系统的功能要求,实现电影票查询及购买功能.。3. 为更好的体现该系统的人性化,实现消费充值、订单管理及评论功能。4. 后期测试及相关文档的编写.。基本要求 1. 查阅、学习数据库方面的基本知识。 2. 开发工具:Java1.7 及JDK等。 3. 熟练使用eclipse工具.。 4. 完整的系统,有各种测试用例。专心-专注-专业 摘要 面对全球性的
2、电影观看热潮,加上大众对视觉效果和环境的需求,电影院独有的互动效果和场内气氛吸引了越来越多的观众。传统的影院售票采用人工售票的方法,而且方法不仅效率低,而且容易出错。为了满足影院对售票业务进行高效的管理,以及方便用户查看订票,采用计算机数据和网络技术开发一个影院售票系统,显得非常的必要。论文阐述了电影购票系统网站的开发过程,并对该系统的需求分析及系统需要实现的设计方法作了介绍。该系统的基本功能主要包括用户查询并购买电影、余额充值、订单管理以及影评。在电影购票系统网站中,顾客能够方便的进行用户注册,查看电影。顾客购买完影票后,会得到系统自动分配的一个唯一的订单号,以方便顾客随时查询订单处理情况。
3、观后还可以进行影评,方便了广大用户反馈意见。关键词电影票查询;余额充值;电影评论;电影票购买;目 录 1.3 实训时间 1.4 实训要求及涉及技术1122356788026 4.6观后影评279001123第1章 专业综合训练概述1.1 实训目标本次专业综合训练的题目是基于JAVA的电影购票系统,目的在于对Java应用系统(问题)进行充分地调研分析,完成软件系统的详细设计和开发实现,实训主要围绕着Java应用层开发,在学生具备了Java 程序设计知识与面向对象技术的基础上,为进一步提高项目实践能力、开拓创新能力而设置的实践性环节课程,提高学员学习兴趣,以及培养学员参与的主动性,使学员真正能学习
4、到相关行业前沿知识与技能,并且学以致用,在提高学生动手实践能力的同时,扩大知识面,达到由被动到主动的心态转变。进而达到院校与企业共同培养高素质、高技能的专业实践型的人才的需求,使学生进入企业后能快速适应和掌握项目工程实践开发技术的能力。1.2 实训内容1.系统需求分析2.数据库设计(sqlite)3.系统重难点讲解4.程序实现5.对学生作品评价打分1.3 实训时间根据学校情况进行安排,从8月31号到9月11日进行了统一实训,期间根据学校安排对实训时间进行了相应的调整。1.4 实训要求及设计技术实训期间需要能提供全天上机的机房,并且要求实训人数在200人以内,机房电脑硬件配置需要:4G以上内存,
5、20G或以上分区空闲空间;软件环境要求:JDK1.6版本以上、Eclipse不限版本。sqlite数据库、javaSE基础知识、GUI、面向对象知识1.5 实训计划前六天9.89.99.109.11上午下午上午下午上午下午上午下午上午下午观看视频观看视频观看视频登陆页面的设计注册页面的设计查询电影票功能的设计购买电影票功能的设计充值功能的设计订单管理功能的设计评论功能的设计完成相关文档和系统的完善第2章 需求分析2.1 课题背景 随着经济的发展,人们生活质量提高了,娱乐方式也日新月异。电影不再是“奢侈品”,而是人们日常生活中休闲娱乐必备的商业产物。在这个网络信息化浓厚的时代,网络成为主要的通讯
6、手段。当代网络如此发达,也有不少基于Web的电影院网站,如深圳太阳数码影城、Mtime时光网。他们多用JSP实现动态网站制作。JSP将网页的设计同网页的后台逻辑分离,是支持可重用的基于组件的设计。但是JSP的组件不够丰富,要实现特殊功能的控件,如用户打分的可拖拉五角星打分条,没有现成的组件,编写制作起来非常复杂麻烦。 信息时代信息时代的今天,我们感受到计算机科学日新月异的气息日渐膨胀。如此,信息的传播途径与传递方式也随之丰富多彩。发展日渐成熟的计算机网络承载着大量信息的流通任务,人们的生活也越来越依靠网络。在日常娱乐商品中,电影成为丰富精神生活的佳品。而如今信息流逝太快,传统媒体不能对影院起到
7、较高效的宣传与展示,电影文化只存在于纸张和胶片中使其传播力度受到局限。由此一来,人们不易在第一时间获知影院动态,许多精彩的电影信息得不到广泛交流,得不到有效的定格,人们想要了解详细的、日志性的影院信息可能也无从下手。我们要利用发达的网络,利用时新的技术,构建起一个基于Web的影院信息管理系统。这样,各大影院就可以合理规划电影信息,展示影院文化,与客户做好充分交流,让用户感受到实时信息,使影院运营的更加流畅,获取更好的经济效益。2.2 开发环境1、Java简介:Java是一个可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于、游
8、戏控制台、科学、移动电话和互联网,同时拥有全球最大的开发者专业社群。2. JDK简介:JDK是Java语音的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。3. SQLite简介:SQLite,是一款轻型的数据库,是遵守的关系型,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是的,而且目前已经在很多中使用了它,它占用资源非常的低,在中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的,同时能够跟很多
9、程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名来讲,它的处理速度比他们都快。4. Eclipse 简介:它是一个开放的、基于的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java2.3 可行性分析网络平台已经成为各个行业经营管理中不可忽视的一个重要环节,拥有一个功能强大且操作简单的电影订票网站已经成为各大影城的发展趋势。可行性研究的目的是用尽可能小的代价在尽短时间内确定问题是否能够解决。采用自主开发方式,系统上线
10、后,能更有效地支持影城的运行,所产生的效益远远大约开发花销,即在经济可行性分析结果是可行的。对于影城管理,本系统使用JAVA1.7与SQLlite数据库,实施本系统只需企业内部接入互联网,配合使用先进的数据库管理技术和服务器管理技术,该系统能完全实现电影订票网站需要的各项功能,所以技术上可行。本系统充分考虑管理人员的使用习惯,操作简单明了。订票及评论的管理迅速可靠。尽可能减少操作人员的操作,并且有很强的可扩充性。所以操作可行性。2.4 功能描述 不少基于Web的电影院网站,如深圳太阳数码影城、Mtime时光网、等。他们多用JSP实现动态网站制作。大体上面的功能就是登陆注册页面,查询购买影票功能
11、,还有订单管理,影片管理功能,但是对于用户余额充值以及观后评论功能页面的不是很重视,要么放在不显眼的地方,要么余额充值跳转到其余网站,令用户不是很方便。 而本系统为一个电影购票系统,其中包含了一般电影购票系统的登陆注册、查询影票,购买影票,以及用户余额的充值、订单的管理,影片的管理,还特别添加了用户余额的充值、观后评论的功能界面,并将其放于显眼位置,便于用户发现并使用,使整个电影购票系统更加人性化。2.5 本章小结本章先介绍了一下课题背景,详细描述了一下本系统是在什么背景下研究的。然后将本系统的开发背景Java1.7、JDK和sqlite数据库等做了简要介绍。接着我们对此电影购票系统进行了可行
12、性分析,通过经济可行性,技术可行性,操作可行性三方面进行了简要论证,并得出了肯定结果。最后对比其余电影购票系统,然后进行了本系统的功能描述。第3章 总体设计3.1 系统总体(模块)结构 图3.1 总体功能图本电影购票系统登录人员分俩种,管理人员和普通用户,管理人员登陆成功后,可以有查看订票信息、管理电影票、管理注册用户、管理电影信息、管理影评灯功能;普通用户登陆后,可以浏览电影信息、查询电影、提交订票信息、余额充值、登录注册、添加影评等功能。 3.2 数据库设计数据库表的建立则是用户信息表、影片类别表、影片语言表、影片信息表、影片场次信息表、电影票信息表、影院表等表的建立,通过查询资料和自己思
13、考整理出来7个表,并用于电影购票系统的编码,其建立完成如下表。表3.1用户信息表USER字段类型是否为空主键外键描述user_idintNo是用户IDuser_emailvarcharNo用户邮箱user_pwdvarcharNo用户密码user_namevarcharYes用户姓名user_phonevarcharYes用户电话user_moneydoubleYes用户金额user_gendertinyintYes用户性别表3.1影片类别表 FTYPE字段类型是否为空主键外键描述kind_idintNo是影片类别IDkind_emailvarcharNo影片类型名表格3.3 影片语言表LAN
14、GUAGE字段类型是否为空主键外键描述language_idintNo是影片语言IDlanguage _namevarcharNo影片语言名表3.4影片信息表MOVIE字段类型是否为空主键外键描述movie_idintNo是影片IDmovie _namevarcharNo影片名称movie_actorvarcharNo影片演员movie_infovarcharNo影片信息movie_languaintNo语言IDmovie_kindintNo类别IDmovie_longintNo影片片长movie_datevarchar上映日期表3.5 影片场次信息表字段类型是否为空主键外键描述play_id
15、intNo是场次IDplay_movieintNo影片IDplay_timevarchar场次时间play_pricedoubleNo场次价格play_addressintNo影院ID 表3.6 电影票信息表字段类型是否为空主键外键描述ticket_idintNo是电影票IDticket_playintNo场次IDticket_userintNo用户IDticket_codevarcharNo电影票号ticket_seatintNo座位号ticket_pricedoubleNo实际票价ticket_datevarchar订票时间ticket_flagtinyintNo退票标识表3. 7 影院表
16、字段类型是否为空主键外键描述cinema_idintNo是影院IDcinema_namevarcharNo影院名3.3 系统流程(数据流图) 图3.3.1系统操作流程图此系统流程图就是简要介绍一下操作流程,首先你进入系统主界面,然后可以选择进入登陆或者注册页面,然后输入密码,检查一下密码,错误则返回;正确则进入功能界面,然后进行功能选择。3.4 系统架构设计 图3.4 系统架构图 总体来看,此次JAVA电影购票系统,先建立了一个初步CLASS即Star项目,然后连接数据库,接着在建立登陆和注册功能,即图中的UserDbReg还有UserDbLink,接下来就是各种需要实现的功能,接下来先建立的
17、是查询电影和购买功能,即图中的BugMove然后就是充值和评论等扩充的功能,例如图中的Comment等。期间还有一些辅导类的代码,穿插其中,最后得到完整的系统源代码。3.5 本章小结这节首先介绍了一下系统总体结构,讲述一下总体功能图,接下来介绍了一下系统操作的流程图,然后将数据库表如何设计以及详细成果做了一下介绍,最后介绍了一下系统架构设计。第4章 详细设计和编码4.1 登录页面 图4.1.1登陆页面截图功能描述:该功能就是进行用户的登陆,按照要求输入1,即可进入用户登陆页面。操作流程图: 图4.1.2登陆操作流程图核心代码: System.out.println(请输入用户名:);Scann
18、er scanner=new Scanner(System.in);String userName=scanner.next(); System.out.println(请输入密码:); String userPwd=scanner.next(); /调用登陆数据库验证方法 /userInfo-返回值告诉你成功失败(0或1) USERdb userDbKink=new USERdb(); userDbKink.name=userName; u serDbKink.mima=userPwd; int iresul=userDbKink.list(); if(iresul=1) System.ou
19、t.println(数据库验证成功); else System.out.println(登录失败); 4.2 注册模块 图4.2.1注册页面图功能描述:该功能就是进行用户的注册,按照要求输入2,即可进入用户注册页面。操作流程图: 图4.2.2注册操作流程图核心代码:System.out.println(请输入要注册的ID);Scanner scanner=new Scanner(System.in);long userid=scanner.nextInt();System.out.println(请输入用户名);String userName=scanner.next();System.out
20、.println(请输入密码);String userPwd=scanner.next();/连接数据库 UserDbReg userDbReg=new UserDbReg(); UserDbReg.id=userid;UserDbReg.name=userName;UserDbReg.mima=userPwd;int num = userDbReg.userRegLink();if(num=0)System.out.println(注册失败);elseif(num=1)System.out.println(注册完成);elseSystem.out.println(注册成功);4.3 查询影票
21、模块 图4.3.1查询影票截图功能描述:该功能就是进行影票的查询,按照要求输入1,即可进入用户查询影票页面。操作流程图: 图4.3.2查询操作流程图核心代码:List list =new ArrayList();USER movie = null;Connection conn = null;try Class.forName(org.sqlite.JDBC);conn = DriverManager.getConnection(jdbc:sqlite:e:/movie.db);Statement sm = conn.createStatement();String string= selec
22、t * from CINEMA;ResultSet rs = sm.executeQuery(string);while(rs.next()movie = new USER(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 = select movi
23、e_price from CINEMA where movie_id=+id;rs = sm.executeQuery(string);long price = rs.getLong(movie_price);string= update USER set user_balance=user_balance-+price+ where user_id=+ming;int result1 = sm.executeUpdate(string);string = select user_balance from USER where user_id=+ming;rs = sm.executeQuer
24、y(string);if(rs.getLong(user_balance)0)return 账户余额不足; catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();finallytry if(conn!=null)conn.close(); catch (SQLException e) / TODO Auto-generated
25、 catch blocke.printStackTrace();return 购票成功;4.5 余额充值 图4.5.1余额充值截图功能描述:该功能就是进行余额的充值,按照要求输入2,即可进入用户充值页面。操作流程图: 4.5.2余额操作流程图核心代码:System.out.println(请输入要充值的金额);Scanner scanner1 = new Scanner(System.in);qian = scanner1.nextInt();UserAll userAll = new UserAll();userAll.money = qian;userAll.name = mizi;use
26、rAll.topup();System.out.println(充值成功);4.6 观后影评 图4.6.1影评截图功能描述:该功能就是进行观后的影评,按照要求输入4,即可进入用户评论页面。操作流程图: 4.6.1影评操作流程图核心代码:public int id;public String name;public String moviename;public String comment; public void mycomment()UserOder movie = null;Connection conn = null;try Class.forName(org.sqlite.JDBC)
27、;conn = DriverManager.getConnection(jdbc:sqlite:e:/movie.db);Statement sm = conn.createStatement();String string = select user_name from USER where user_id=+id+;ResultSet rs = sm.executeQuery(string);name = rs.getString(user_name);string= insert into REVIEW(movie_name,user_name,review)values(+movien
28、ame+,+name+,+comment+);int iresulyt = sm.executeUpdate(string);4.7 本章小结本章先设计了登陆和注册页面,等登陆页面设计好的话,接下来开始设计查询、购买电影票功能,然后设计扩充功能余额充值和影评,这俩个功能由于是扩充的,所以编码的较为详细,这一节就是详细编码各个功能模块。第5章 软件测试5.1 软件测试方面错误展示登陆密码失败:由于账号密码错误展示出的错误提示,如下图5.1 图5.1登陆失败截图购买电影余额不足:由于账号中没有足够的钱,不足以支付购买电影票的钱,显示账号余额不足,如下图5.2 图5.2余额不足截图5.2 软件测试方
29、案说明本系统先是注册了一个账号yuhaiming密码11111,然后使用注册的账号密码进行登录,接着进行查询电影和购买电影功能,此时购买的电影编号1,期间可能发生用户余额不足的情况使用户购买失败,另一种可能则是购买成功。当你余额不足时,可以根据提示输入数字2进行余额充值,充值金额为11,当你观看完成后,输入数字4,进行影评,评论为111.5.3 本章小结本章先是将该系统运行过程中出现的问题进行了分析,可能出现账号密码错误和购买电影时余额不足的问题,然后将电影购票系统的测试方案详细描述了一下。设计总结此次俩周的实训总体来说受益匪浅,不仅在职坐标网站观看了JAVA的相关视频,让我这个从来没接触过J
30、ava的人可以正常的进行软件的编写,还使我对于数据库的建立和连接有了很深的了解。期间源代码的编写对我来说是个不小的挑战,但是在老师和同学的帮助下,我逐渐掌握了编码规律,然后基本顺利的完成了本次实训的要求。后期的测试和文档的编写出现了很多的错误,但是最终还是一一将其克服了。但是此次实训还是有一些不足的地方,比如在总体设计那里设计的总体功能图,设计了俩种登陆用户,除了普通用户还有管理员,但是由于技术和时间有限,所以管理员页面没有机会设计出来,是个不小的遗憾,希望以后有机会可以弥补。但是这俩周累并快乐的实训还是让我成长了,让我在进入社会之前又一次充实了自我。参考文献1 BruceEckel. 。机械
31、工业出版社,2003,10:1-3782 赛奎春.。JAVA工程应用于项目实践.机械工业出版社。2002,8,23:23-2943 FLANAGAN.JAVA技术手册.中国电力出版社,2002,6:1-4654 孙一林,彭正JSP数据库编程实例.清华大学出版社,2008,8:30-2105 职坐标网站 6 孙涌.现代软件工程.北京希望电子出版社,2003.8:1-2467萨师炫,王珊.数据库系统概论.高等教育出版社,2002,2:3-460专业综合训练成绩单姓名班级学号基本功能(满分40)编码规则、代码注释、程序没有bug(满分20)附加功能(满分20)沟通表达(满分20)总成绩(满分100)于海明计算机科学12-2班 指导教师签字: 日期: