图书管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java语言课程设计
报告书
专业:信息与计算科学学号:021340303 姓名:万为康
指导教师:文军
题目:媒体库管理系统设计
1、问题描述
图书馆中的资料很多,如果能分类对其资料流通进行管理,将会带来很多方便,因此需要有一个媒体库管理系统。
图书馆共有三大类物品资料:图书、视频光盘、图画。
这三类物品共同具有的属性有:编号、标题、作者、评级(未评级,一般,成人,儿童)等。其中图书类增加出版社、ISBN号、页数等信息;视频光盘类增加出品者的名字、出品年份和视频时长等信息;图画类增加出品国籍、作品的长和宽(以厘米计,整数)等信息。
2、功能要求
(1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。
(2)查询物品
可按照三种方式来查询物品,分别为:
按标题查询:输入标题,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”;按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”;按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”;
(3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。
(4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。
(6)物品存盘:将当前程序中的物品信息存入文件中。
(7)读出物品:从文件中将物品信息读入程序。
3、问题的解决方案
根据系统功能要求,可以将问题解决分为以下步骤:
应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;
(1)分析系统中的各个实体及它们之间的关系;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述;
完成类中各个成员函数的定义;
(4)完成系统的应用模块;
(5)功能调试
目录
一.需求分析 (4)
二.概要设计 (4)
三.详细设计 (5)
四.测试结果 (7)
五.调试分析 (9)
六.经验总结 (9)
一.需求分析
(1)根据问题描述要建立Book(图书类)、Video(视频光盘类)、Picture(图画类)
三个物品类用来存储物品的信息
(2)分析功能需求建立添加物品、编辑物品、显示物品、删除物品、查询物品、保存信息、读取信息等功能操作 (3)建立界面的操作以及优化
二.概要设计
1.系统结构图
2.功能说明
(1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。 (2)查询物品
可按照三种方式来查询物品,分别为:
按标题查询:输入标题,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”; 按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”; 按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”;
(3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。 (4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,
图书管理系统
图书类信息
视频光盘类信息
图画类信息
查询信息 显示信息 修改信息
删除信息
添加信息
保存信息
读取信息
标题查询
编号查询 类别查询
则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。
(6)物品存盘:将当前程序中的物品信息存入文件中。
(7)读出物品:从文件中将物品信息读入程序。
3.设计三个物品类
4..设计主程序实现功能操作以及错误操作提示框
5.通过界面实现相应操作
三.详细设计
1.设计三个物品公共信息基类(BookBase)
public class BookBase implements Serializable{
public String _number;
public String _title;
public String _author;
public String _rank;
public BookBase(String number,String title,String author,String rank) //初始化物品信息public String getNumber()//获取编号
public void setNumber(String _number) //设置编号
public String getTitle()//获取标题
public void setTitle(String _title) //设置标题
public String getAuthor() //获取作者
public void setAuthor(String _author) //设置作者
public String getRank()//获取等级
public void setRank(String _rank)//设置等级
}
2.设计三个物品类(T)以及公有继承(BookBase类)
public class T extends BookBase implements Serializable{
数据对象:D={t1,t2,t3,t4……}
基本操作:
public T(t1,t2,t3,t4,…….)//初始化信息
public setT1(t1)//设置信息
public getT1()//获取相应信息
public setT2(t1)//设置信息
public getT2()//获取相应信息
……………
}
.3.设计错误提示类(Cdialog类)
public class Cdialog extends JDialog implements ActionListener {
JButton ok=new JButton("确定");//确定按钮
JButton cancel=new JButton("返回");//定义返回按钮
JLabel jl=new JLabel("",JLabel.CENTER);//定义标签