面向对象程序设计实训说明书电影院网上订票系统设计
中北大学
面向对象程序设计实训
说明书
学院、系:软件学院
专业:软件工程
学生班级:13140A01
学生姓名:景贝贝学号:1314011438设计题目:电影院网上订票系统设计
起迄日期:2015年6月29日- 2015年7月10日指导教师:杨秋翔
2015 年7月8 日
实训任务书
实训任务书
一、需求分析
需求分析包括可行性分析、系统流程图和数据流图,数据字典。可行性分析包括技术可行性、经济可行性和操作可行性。
1.1 可行性分析
1.1.1 技术可行性
根据电影院提出的系统功能、性能及实现系统的各种约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的。
由以上分析可知,影院售票系统的开发在技术上是可行的。
1.1.2 经济可行性
电影院具有信息化的处理设施,并且拥有支持本系统的应用平台。因此无需再投入资金购买其他设施。
系统的开发基于本人对程序开发的实践学习而来,电影院无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以
接受。
由以上分析可知,影院售票系统在经济上是可行的。
1.1.3 操作可行性
根据系统页面用户可以自动查询影片信息。还可浏览完影片信息以后操作订票、退票等功能。管理员也可以在后台添加、修改并删除影片信息,还可以管理注册用户信息和用户订票信息。
由以上分析可知本系统在操作上也是可行的。
1.2 系统流程图
首先未注册的用户要先注册,注册完了以后输入用户名和密码进入页面。根据网站上的影片信息用户可以选择自己喜欢的电影来订票。然后订票信息会自动存储到后台订票信息数据当中。
本系统的具体流程为如图所示。
系统流程图
1.3 数据流图
本系统的基本模型数据流图为如图所示。
系统基本模型数据流图
系统功能数据流图
1.4数据需求
(1)影片信息:电影名称、导演、演员、电影简介、语言、片场(分钟)、放映日期、时间、价格、票数、
(2)订票信息:电影名称、放映时间、放映大厅、座位号、票价
(单价)
(3)用户信息:用户名、用户密码、手机号(4)放映厅信息:放映大厅名字、座位数1.5数据字典
Film(电影表)
order(订票表)
Hall(放映大厅)
Seat(座位类别)
二、概要设计
从数据需求分析中得出系统的实体属性图,遵循三范式原则,对实
体之间的依关系进
行了整合,得出本系统E-R图,如图所示。
系统E-R图
其中影片信息实体属性图又为如下图所示。
影片信息实体属性图
订单详情实体属性图为如图所示。
图影片场次实体属性图用户实体属性图为如图所示。
图用户信息实体属性图
全局概念E-R图
三、详细设计
ER图向关系模型的转换
影片(影片编号,类别,票价,播放日期,名称,导演,片长)影票(影票编号,票价,播放日期,影片名称,座位号)
注册用户(用户编号,用户名,密码)
放映大厅(大厅编号,名字)
座位(座位id,座位号)
Orders(orderId,FName,Time,Hall,Number,Money);
Seat(SEID,seatname);
Hall(HID,HHall);
User(username,password,phonenumber);
Film(FID,FilmName,FDirector,FLanguage,FLong,FDate,
FMoney,FNumber,FTimeID);Ticket(订票表)
Seat(座位类别)
Film(电影表)
user(用户表)
Hall(放映大厅)
四、编码实现
文件目录
IOrderDAOimpl.java package cn.movie.impl; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List;
import cn.movie.dao.IOrderDAO;
import cn.movie.vo.FilmInformation;
import cn.movie.vo.Order;
public class OrderDAOImpl implements IOrderDAO{ private Connection conn;
private PreparedStatement pstmt = null;
private PreparedStatement pstmt1 = null;
private PreparedStatement pstmt2 = null;
private PreparedStatement pstmt3 = null;
public OrderDAOImpl(Connection conn) {
this.conn=conn;
}
@Override
public boolean doUpdate(Order vo) throws Exception { boolean flag = false;
return false;
}
@Override
public boolean doRemove(int id,String hall,String filmname,String seatname) throws Exception {
boolean flag = false;
//System.out.println(id);
String sql = "DELETE FROM orders WHERE orderId=?";
this.pstmt = this.conn.prepareStatement(sql);
this.pstmt.setInt(1,id );
String sql1 = "select seatnamea from hall where hall='"+hall+"' ";
this.pstmt1 = this.conn.prepareStatement(sql1);
ResultSet rs = this.pstmt1.executeQuery();
rs.next();
//System.out.println("++++++++++"+rs.getString(1));
String sql2="insert into "+rs.getString(1)+"(seatname) values(?)" ;
this.pstmt2 = this.conn.prepareStatement(sql2);
this.pstmt2.setString(1,seatname);
this.pstmt2.executeUpdate();
String sql3="update film set number=number+1 where filmName=?";
this.pstmt3=this.conn.prepareStatement(sql3);
this.pstmt3.setString(1,filmname);
this.pstmt3.executeUpdate();
//System.out.println(id);
if (this.pstmt.executeUpdate() > 0) {
flag = true;
}
return flag;
}
@Override
public Order findById(String id) throws Exception { // TODO Auto-generated method stub
return null;
}
@Override
public List
throws Exception {
List
String sql = "select * from orders where username=?";
this.pstmt = this.conn.prepareStatement(sql);
this.pstmt.setString(1, keyWord);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
Order order = new Order();
影院网上售票系统的设计与实现开题报告
毕 业 设 计(论 文)任 务 书 课题名称 影院网上售票系统的设计与实现 姓 名 学 号 院 系 专 业 指导教师 讲师 2011年2月25日 ※ ※※※※※※※※ ※ ※ ※ ※ ※※ 2011届学生 毕业设计(论文)材料 (一)
一、设计(论文)的教学目的 通过本课题的设计,培养学生综合运用科学知识解决实际问题的能力,培养学生独立思考和独立工作、调查研究、查阅文献和资料及编写技术文档的能力。深化和拓展学生的知识视野,使学生加深对统计知识和理解,掌握系统开发的方法和流程,锻炼和提高学生运用可视化编程工具进行软件开发的能力。培养学生以后对工作的责任感。提高个人素质,能和团队合作完成大型项目的开发。 二、设计(论文)的主要内容 1. Jsp影院网上售票系统的架构是基于Jsp/JavaBean的模式,这种模式以其稳定性和优越的速度,被全球企业证明公认为可以高效稳定的进行企业运算开发的平台。 2. 本平台利用现在比较广泛的JSP+Oracle数据库的架构实现的。完成一个完整的影院售票系统,分为影院内部管理和网络服务2个系统,影院内部管理子系统主要实现影院售票员对影院的售票功能,网络服务实现网上查询浏览约定电影院功能。这些功能可以分为以下二部个部分:前台管理,,后台管理。 前台现场售票:电影名称,票价,票价打折,售票,座位,打印票,结帐 后台管理模块:管理员主要用于电影类型管理:添加电影种类,介绍,票价,放映场次,放映时间,放映大厅,近几日放映订划管理。具体的功能可以分为以下几个部分:影院介绍,预订电影等。 3.系统的建设关键在于其所使用的架构,而电影院网上售票这种基于web的系统,传统的c/s架构已经不能满足大量用户的访问和操作,b/s基于浏览器的架构则是目前网络系统应用的主流,它将大量的数据处理工作交给服务器端来处理,客户端只用通过普通的IE浏览器即可访问系统,方便快捷而且利于系统的更新和维护,java语言在该方面更是得天独厚,j2ee规范的出现则使系统的开发更加规范,层次更加清楚,更利于对复杂事务的处理,而且在安全性方面也做的更好。基于mvc的开发流程则使开发过程更加清晰明了,利于做一些复杂的逻辑实现,从而节省了开发周期和开发成本。 三、设计(论文)的基本要求 1、设计者必须发挥独立思考、独立操作、独立编程的能力; 2
面向对象程序设计考前复习题及答案
简答题 1、传统的结构化程序设计的优点和缺点是什么? 优点: (1)这种程序设计方法力求算法描述准确。 (2)对每一子过程模块容易进行程序正确性证明。 缺点: (1)这种程序设计方法本质上是面向“过程”的,而“过程”和“操作”又是不稳定和多变的,因此不能直接反映人类求解问题的思路。 (2)程序代码可重用性差。程序中除少数标准库函数外,每设计一个程序时,程序员几乎从零做起。即使重用代码,通常也是通过拷贝或编辑重新生成一份。 (3)维护程序的一致性困难。该种方法将数据与对数据进行处理的程序代码分离。 2、什么是对象? 每个对象都具有属性(Attribute)和方法(Method)这两方面的特征。对象的属性描述了对象的状态和特征,对象的方法说明了对象的行为和功能,并且对象的属性值只应由这个对象的方法来读取和修改,两者结合在一起就构成了对象的完整描述。 3、什么是消息? 在面向对象的程序设计中,由于对象描述了客观实体,它们之间的联系通过对象间的联系来反映。当一个对象需要另外一个对象提供服务时,它向对方发出一个服务请求,而收到请求的对象会响应这个请求并完成指定的服务。这种向对象发出的服务请求就称为消息。4、什么是多态性? 所谓多态性是指当程序中的其他部分发出同样的消息时,按照接收消息对象的不同能够自动执行类中相应的方法。其好处是,用户不必知道某个对象所属的类就可以执行多态行为,从而为程序设计带来更大方便。 5、什么是面向对象的程序设计方法? 这种方法将设计目标从模拟现实世界的行为转向了模拟现实世界中存在的对象及其各自的行为。 在OOP中,将“对象”作为系统中最基本的运行实体,整个程序即由各种不同类型的对象组成,各对象既是一个独立的实体,又可通过消息相互作用,对象中的方法决定要向哪个对象发消息、发什么消息以及收到消息时如何进行处理等。 6、面向对象方法的特点是什么? (1)OOP以“对象”或“数据”为中心。由于对象自然地反映了应用领域的模块性,因此具有相对稳定性,可以被用作一个组件去构成更复杂的应用,又由于对象一般封装的是某一实际需求的各种成分,因此,某一对象的改变对整个系统几乎没有影响。 (2)引入了“类”(class)的概念。类与类以层次结构组织,属于某个类的对象除具有该类所描述的特性外,还具有层次结构中该类上层所有类描述的全部性质,OOP中称这种机制为继承。 (3)OOP方法的模块性与继承性,保证了新的应用程序设计可在原有对象的数据类型和功能的基础上通过重用、扩展和细化来进行,而不必从头做起或复制原有代码,这样,大大减少了重新编写新代码的工作量,同时降低了程序设计过程中出错的可能性,达到了事半功倍的效果。 7、面向对象的程序设计方法与结构化程序设计方法的比较 (1)传统的结构化程序设计方法以过程为中心构造应用程序,数据和处理数据的过程代码是分离的、相互独立的实体,设计出的程序可重用代码少,且当代码量增加时维护数据和代码的一致性困难。
c++面向对象程序设计大作业
《面向对象程序设计》 大作业 题目学生成绩管理系统 学院 专业 班级 姓名 指导教师 2015 年11 月11 日
目录 一大作业的目的 (1) 二大作业的内容............................ . .. (2) 三大作业的要求与数据............... ...... . (3) 四大作业应完成的工作.................. . (4) 五总体设计(包含几大功能模块)........... . (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)
一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C++语言实现系统; 2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出. 3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一个学生的学号、姓名、3门课成绩 (2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录 的输入。) (3)、成绩信息显示浏览功能:完成全部学生记录的显示。 (4)、查询功能:完成按姓名查找学生记录,并显示。 (5)成绩信息的删除:按学号进行删除某学生的成绩. (6)、排序功能:按学生平均成绩进行排序。 (7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
第3章 面向对象程序设计基础
第3章面向对象程序设计基础
第3章面向对象程序设计基础 【1】什么是Java程序使用的类?什么是类库? 答:类是将一类事物的特性描述出来,然后如果用这个类来定义对象,则该对象就拥有了这个类所描述的所有特性。 在Java系统中,系统定义好的类根据实现的功能不同,可以划分成不同的集合,每个集合称为一个包,所有包合称为类库。 【2】如何定义方法?在面向对象程序设计中方法有什么作用? 答:方法的定义由两部分组成:方法声明和方法体。 方法的声明如下: 返回值类型方法名(参数类型形式参数1,参数类型形式参数2…){ 程序代码; 返回值; } 在面向对象程序设计中,方法的作用是完成对类和对象属性操作。 【3】简述构造方法的功能和特点。下面的程序片段是某学生为student类编写的构造方法,请指出其中的错误。 void Student(int no,String name) {
studentNo=no; studentName=name; return no; } 答:构造方法的功能是:构造方法是一个特殊的方法,主要用于初始化新创建的对象; 特点:构造方法的方法名要求与类名相同,用户不能直接调用,只能通过new运算符调用,而且构造方法是不返回任何数据类型,甚至也不返回void数据类型,即不能在构造方法前加void。 错误之处:(1)构造方法Student()前不能加void,(2)不能用return语句,(3)类名Student 首字母S改成小写s. 【4】定义一个表示学生的student类,包括的域有学号、姓名、性别、年龄,包括的方法有获得学号、姓名、性别、年龄及修改年龄。编写Java程序创建student类的对象及测试其方法的功能。 class Student { String id; String name; String sex; int age; void talk(){
影院网上售票系统的设计与实现开题报告
毕 业 设 计(论 文)任 务 书 课题名称 影院网上售票系统的设计与实现 姓 名 学 号 院 系 专 业 指导教师 讲师 2011年2月25日 ※※※※※※※※※ ※※ ※ ※ ※※ ※※※※※※※※※ 2011届学生 毕业设计(论文)材料 (一)
一、设计(论文)的教学目的 通过本课题的设计,培养学生综合运用科学知识解决实际问题的能力,培养学生独立思考和独立工作、调查研究、查阅文献和资料及编写技术文档的能力。深化和拓展学生的知识视野,使学生加深对统计知识和理解,掌握系统开发的方法和流程,锻炼和提高学生运用可视化编程工具进行软件开发的能力。培养学生以后对工作的责任感。提高个人素质,能和团队合作完成大型项目的开发。 二、设计(论文)的主要内容 1. Jsp影院网上售票系统的架构是基于Jsp/JavaBean的模式,这种模式以其稳定性和优越的速度,被全球企业证明公认为可以高效稳定的进行企业运算开发的平台。 2. 本平台利用现在比较广泛的JSP+Oracle数据库的架构实现的。完成一个完整的影院售票系统,分为影院内部管理和网络服务2个系统,影院内部管理子系统主要实现影院售票员对影院的售票功能,网络服务实现网上查询浏览约定电影院功能。这些功能可以分为以下二部个部分:前台管理,,后台管理。 前台现场售票:电影名称,票价,票价打折,售票,座位,打印票,结帐 后台管理模块:管理员主要用于电影类型管理:添加电影种类,介绍,票价,放映场次,放映时间,放映大厅,近几日放映订划管理。具体的功能可以分为以下几个部分:影院介绍,预订电影等。 3.系统的建设关键在于其所使用的架构,而电影院网上售票这种基于web的系统,传统的c/s架构已经不能满足大量用户的访问和操作,b/s基于浏览器的架构则是目前网络系统应用的主流,它将大量的数据处理工作交给服务器端来处理,客户端只用通过普通的IE浏览器即可访问系统,方便快捷而且利于系统的更新和维护,java语言在该方面更是得天独厚,j2ee规范的出现则使系统的开发更加规范,层次更加清楚,更利于对复杂事务的处理,而且在安全性方面也做的更好。基于mvc的开发流程则使开发过程更加清晰明了,利于做一些复杂的逻辑实现,从而节省了开发周期和开发成本。 三、设计(论文)的基本要求 1、设计者必须发挥独立思考、独立操作、独立编程的能力; 2、收集和查询有关技术资料;