基于JAVA的图书馆管理系统毕业设计文档格式.docx
《基于JAVA的图书馆管理系统毕业设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于JAVA的图书馆管理系统毕业设计文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考各种资料和进行数据库系统开发实践。
在指导老师的帮助下,已经基本上成功地实现了设计任务书的要求,使得设计的数据库系统能够实现一般数据库的管理。
2系统分析
2.1功能需求分析
该项目系统包含的功能有:
图书信息管理、读者信息管理、借还书服务管理,用户管理,其中每个功能由若干个相关联的子功能模块组成。
如图所示:
图2.1系统功能模块
(1)图书信息管理
“图书信息管理”功能模块用于管理图书的相关信息,包括查询、添加、修改和删除功能。
在进行图书信息的添加时,系统会自动检测所添加的图书信息中的书籍条码在书籍表中是否已经存在,如果存在,会提示用户该书已经存在。
在进行图书信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有用户确认后才能进行图书信息的删除。
在进行图书修改时,不准用户修改书籍条码,因为书籍条码作为数据库中书籍表的主键是不同书籍的唯一标识,不准修改书籍条码可以防止不经意将书籍条码改错;
如果确实要修改书籍条码,可以通过数据库管理员来实现,也可以先将错误书籍条码信息删除再添加正确的书籍信息,这样在删除时会弹出提示窗口让用户确认是否删除,给用户以提示,防止意外错误[3]。
其模块如下图所示:
“图书信息查询”功能模块用于查询图书的相关信息,包括书籍条码(BOOK_ID)、书名、出版社、作者、出版日期。
(2)读者信息管理
“读者信息管理”功能模块用于管理与读者相关的信息,包含的子功能模块如下图所示:
“读者信息查询”功能模块用于查询读者的相关信息,包括读者条码、读者姓名、性别、证件号码。
“读者信息添加”功能模块用于添加新近读者的相关信息,包括读者条码、读者姓名、性别、证件号码。
“读者信息修改”功能模块用于修改已存读者的需修改的信息。
“读者信息删除”功能模块用于删除读者的所有信息。
(3)借还书服务管理模块
图书馆管理员通过此模块来进行借书操作。
在进行借书信息的添加时,系统会自动检测该读者是否有权借书(过去借书历史中有超期未还的现象),所借书是否在馆内未被借出,只要有一个条件不满足,就会提示出错。
“借书服务管理”用于登记读者借阅图书的记录并减少在库图书的库存量,登记内容包括读者编号、书籍条码(BOOK_ID)。
图书馆管理员通过此模块来进行还书操作。
在进行还书信息的添加时,系统会自动检测此次还书是否在规定的时间内,若超期,则锁定该读者,并给出提示信息。
“还书服务管理”功能用于登记读者归还图书的记录并增加在库图书的库存量,登记内容包括读者姓名、书籍条码(BOOK_ID)、借书日期、归还时间、超期天数。
(4)用户管理
“用户信息管理”功能模块用于管理与用户相关的信息,包含的子功能模块如下图所示:
“用用户息查询”功能模块用于查询读者的相关信息,包括读者条码、读者姓名、性别、证件号码。
“读用户息添加”功能模块用于添加新近用户的相关信息,包括用户名,密码。
“用户信息修改”功能模块用于修改已存用户的需修改的信息。
“用户信息删除”功能模块用于删除读者的所有信息。
2.2系统流程图
在用户需求分析的基础上把系统划分为三个子模块:
读者信息管理、图书信息管理、图书流通管理。
这三个模块之间,紧密结合,共享信息资源,形成一种完美的学校图书管理系统流程图[4]。
如下图所示:
3数据库设计
根据系统功能需求,数据库采用Microsoftsqlsever2000建立。
Microsoftsqlsever2000是一个桌简单易用,功能强大,支持的数据类型较丰富,操作简单,的数据库管理系统。
3.1概念结构设计
概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是整个数据库设计的关键。
系统基本E-R图
(1)图书管理系统基本E-R图如下所示:
图3.1系统基本E-R图
4系统实现
4.1登录模块实现
(1)模块功能
该功能模块实现的功能是实现管理员到图书管理系统的登录操作,登录信息(用户名、密码)。
(2)界面设计
【系统登录】对话框界面如图4.1所示。
图4.1【系统登录】对话框界面
其中主要控件的属性设置及功能如表4-1所示。
表4-1对话框IDD_DIALOG_LOGIN中的主要控件
控件类型
ID
属性设置
Button
yesBtn
Caption设为“确定”
cancelBtn
Caption设为“取消”
StaticText
userLabel
Caption设为“用户名”
passwordLabe
Caption设为“密码”
核心代码如下:
if(e.getSource()==yesBtn){
StringstrSQL;
strSQL="
selectUserID,UserName,PasswordfromUserTablewhereUserName='
"
+
userTextField.getText().trim()+"
'
andPassword='
passwordTextField.getText()+"
;
//取数据库内容,判断用户和密码的正确
rs=db.getResult(strSQL);
try{
if(rs.next())
{
mainFrame.setEnable();
this.dispose();
}
else
JOptionPane.showMessageDialog(null,"
登录不成功,请输入正确的用户名密码!
);
catch(SQLExceptionsqle){
System.out.println(sqle.toString());
}
}(3)主界面
当管理员登录信息正确时,将登录到主界面,该模块中有“系统管理”,“读者管理”,“书籍管理”,“借书管理”,“信息查询”,“帮助”功能模块。
图4.2主界面
主界面的控件设置和说明表4-2所示。
表4-2主界面控件设置及其说明
控件ID号
说明
systemMenu
“系统管理”按钮
readerMGRMenu
“读者管理”按钮
bookMGRMenu
“书籍管理”按钮
borrowBookMenu
“借书管理”按钮
infoBrowseMenu
“信息查询”按钮
4.2用户模块
(1)添加用户:
“添加”界面
(2)修改用户:
“修改”界面
表4-3主界面控件设置及其说明
“用户名”
passwordLabel
“密码”
passwordConfirmLabel
“确认密码”
addBtn
“添加”按钮
“取消”按钮
NewPasswordLabel
“新密码”
UpdateBtn
“更新”按钮
4.3读者管理模块
该模块主要实现对已存在的读者信息进行管理,主要有对新增加读者信息的添加功能,对已存在读者信息的修改功能,对已存在读者信息按读者编号进行删除的功能,以及对已存在读者信息按读者条码或姓名模糊查找功能。
(1)添加读者:
(2)修改读者:
4.4借书管理模块实现
进入此模块首先看到的是借出图书服务模块,在此模块中通过书号(BOOK_ID)来实现对在库图书的借出操作,在借阅图书时会显示该读者是否能借书的功能,具体如图所示:
“图书借出”界面
4.5书籍管理模块
进入此模块主要查看管理书籍的,主要是对书籍进行添加,删除,修改等操作。
对书本进行一个入库的操作,具体情况,如图所示:
修改书籍:
5总结
本次课程设计能够顺利完成,首先要感谢我们的辅导教师黄永慧老师,她一次又一次耐心地为我们讲解基础知识,使我们的基础更扎实。
而黄永慧老师的循循善诱又使我们掌握基础知识时,得到了更多的启发,能力又得到了提高。
另外,还要感谢其她对于本次课设给了我很大帮助的同学们,他们将自己所学毫不吝惜地与别人交流,使大家的理解有加深了很多。
通过这次课程设计,我才深知数据库灵活。
在刚刚结束的一个学期里,我对数据库的学习才仅仅是个入门,通过这次的课程设计,我才发现自己在以往学习中的诸多问题。
对于同一问题没有多角度的思考,仅仅局限于一种方法,根本没有思考是否还有别的更简单更快捷的方法,不能做到举一反三,还有太注重理论学习而忽视了上机实践,结果就是理论知识不扎实上机动手能力差,编译出现错误时不能很快的找出错误。
在这次课设的编程过程中,我尽量把以往学过的知识全部用上,对于同一个问题从不同的角度考虑实现方法,所以我才发现了自己很多的问题,而且借此寒假,我会改正这些问题,并且深入学习数据库和C++。
在这次课程中,除了达到了课设目的,我想我最大的收获就是以上的发现并且能及时的解决。
参考文献
[1]数据库原理与应用,蔡延光,机械工业出版社,2012
[2]java编程思想,BruceEcke【美】,机械工业出版社,2011
课程设计
课程名称数据库原理与应用课程设计
题目名称图书馆管理系统
学生学院自动化学院
专业班级_09级网络4班__
学号姓名3109001399黄汉财
3109001398黄端端
3109001400黄嘉俊
3109001401黄剑航
指导教师黄永慧
2012年5月23日