图书管理系统设计.docx
- 文档编号:26120882
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:19
- 大小:2.49MB
图书管理系统设计.docx
《图书管理系统设计.docx》由会员分享,可在线阅读,更多相关《图书管理系统设计.docx(19页珍藏版)》请在冰豆网上搜索。
图书管理系统设计
(封面)
XXXXXXX学院
图书管理系统设计报告
题目:
院(系):
专业班级:
学生姓名:
指导老师:
时间:
年月日
一、需求分析...........................................3
二、系统运行环境.........................................3
三、功能需求描述.........................................3
四、模块结构图...........................................4
五、数据库设计...........................................4
5.1数据库分析........................................4
5.2数据库概念设计....................................4
5.3数据库逻辑结构设计...............................5
5.4数据库字典....................................6
六、程序模块设计.........................................6
6.2界面设计.......................................10
6.3程序运行.......................................11
七、模块的实现.........................................12
八、总结................................................22
一、需求分析
(1)能够输入图书的综合情况和进行新书入库、现有图书信息修改以及删除;
(2)能够实现对读者档案的查询和编辑管理;
(3)能够进行罚款功能;
(4)能够进行借阅历史的查询功能;
二、系统运行环境
操作系统为Windows8、windows7或windowsXP使用的集成开发工具Eclipse数据库采用SQLServer2008项目运行环境为JDK8。
三、功能需求描述
资料维护:
为了存放图书、读者档案的全部数据,本系统将每一本图书和每位读者的信息进行管理。
系统维护包括对各种表记录的修改、删除、添加等操作。
系统查询:
可以按图书编号、借阅证编号等相关信息进行查询
系统管理:
进行员工管理、数据备份和数据恢复。
报表统计:
包括统计图书信息、读者信息、借阅信息和罚款信息等。
其它操作:
包括修改密码、添加用户、页面设置等
。
四、模块结构图
图1.1系统业务逻辑关系
五、数据库设计
5.2数据库概念设计
2.1局部E-R图图书信息管理系统主要分为以下几个局部E-R图:
:
1n
1
n
n1
5.3数据库逻辑结构设计
图书信息(图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库)
借阅者(姓名,学号,班级,院系)
销书清单(图书编号,管理者编号,图书名称,销书日期,销书数量)
借阅(学号,图书编号,借出日期,到期日期,拖欠日期,罚款数目)
管理(管理员编号,学号,图书编号)
5.4数据字典
序号
字段名
数据类型
约束
备注
1
ISBN
varchar(13)
主键
编号
2
bookname
varchar(40)
非空
图书名字
3
writer
varchar(21)
非空
作者
4
translator
varchar(30)
非空
译者
5
publisher
varchar(50)
非空
出版社
6
data
smalldatetime
非空
出版日期
7
price
smalldatetime
非空
价格
8
Id
int
主键
编号
9
typeName
varchar(20)
非空
图书类别
10
days
int
无
可借天数
11
fk
float
无
罚款
12
bookISBN
varchar(13)
无
图书编号
13
bookrrowDate
datetime
非空
借阅时间
14
backDate
datetime
非空
归还时间
15
name
varchar(12)
非空
姓名
16
sex
varchar
(2)
非空
性别
17
age
int
非空
年龄
18
identityCard
varchar(30)
非空
身份证号
19
workdate
datetime
非空
办证时间
20
tel
varchar(50)
非空
电话号码
21
password
varchar(10)
非空
密码
22
admin
bit
非空
系统管理员
23
date
datetime
非空
办借书证时间
24
number
int
非空
押金
25
operator
varchar(6)
非空
证件
26
zk
float
非空
每天借阅金额
27
maxNum
int
非空
最大借阅书籍量
28
zj
int
非空
证件
29
zy
varchar(50)
非空
职业
30
bztime
datetime
非空
读者办理时间
6.2界面设计:
登入界面设计
管理员界面设计
6.3程序运行:
登入界面
管理界面
图书信息添加界面
图书信息修改界面
图书类别添加界面
图书借阅管理界面
七、模块的实现
7.1数据库连接部分
packagecom.tony;
importjava.awt.BorderLayout;
importjava.awt.Dimension;
//importjava.awt.Dialog.ModalExclusionType;
importjava.awt.event.ComponentAdapter;
importjava.awt.event.ComponentEvent;
import.URL;
importjavax.swing.ImageIcon;
importjavax.swing.JButton;
importjavax.swing.JDesktopPane;
importjavax.swing.JFrame;
importjavax.swing.JInternalFrame;
importjavax.swing.JLabel;
importjavax.swing.JMenu;
importjavax.swing.JMenuBar;
importjavax.swing.JToolBar;
importjavax.swing.UIManager;
importjavax.swing.WindowConstants;
importjavax.swing.border.BevelBorder;
importcom.tony.iframe.BookLoginIFrame;
importcom.tony.util.CreatecdIcon;
/**
*主窗体
*
*/
publicclassLibraryextendsJFrame{
privatestaticfinalJDesktopPaneDESKTOP_PANE=newJDesktopPane();
publicstaticvoidmain(String[]args){
try{
UIManager.setLookAndFeel(UIManager
.getSystemLookAndFeelClassName());
newBookLoginIFrame();//登录窗口
}catch(Exceptionex){
ex.printStackTrace();
}
}
publicstaticvoidaddIFame(JInternalFrameiframe){//添加子窗体的方法
DESKTOP_PANE.add(iframe);
}
publicLibrary(){
super();
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
//setModalExclusionType(ModalExclusionType.APPLICATION_EXCLUDE);
setLocationByPlatform(true);
setSize(800,600);
setTitle("图书馆管理系统");
JMenuBarmenuBar=createMenu();//调用创建菜单栏的方法
setJMenuBar(menuBar);
JToolBartoolBar=createToolBar();//调用创建工具栏的方法
getContentPane().add(toolBar,BorderLayout.NORTH);
finalJLabellabel=newJLabel();
label.setBounds(0,0,0,0);
label.setIcon(null);//窗体背景
DESKTOP_PANE.addComponentListener(newComponentAdapter(){
publicvoidcomponentResized(finalComponentEvente){
Dimensionsize=e.getComponent().getSize();
label.setSize(e.getComponent().getSize());
label.setText(" +size.height+"src='" +this.getClass().getResource("/backImg.jpg") +"'>"); } }); DESKTOP_PANE.add(label,newInteger(Integer.MIN_VALUE)); getContentPane().add(DESKTOP_PANE); } /** *创建工具栏 * *@returnJToolBar */ privateJToolBarcreateToolBar(){//创建工具栏的方法 JToolBartoolBar=newJToolBar(); toolBar.setFloatable(false); toolBar.setBorder(newBevelBorder(BevelBorder.RAISED)); JButtonbookAddButton=newJButton(MenuActions.BOOK_ADD); //ImageIconicon=CreatecdIcon.add("bookAdd.bmp");//创建图标方法 ImageIconicon=newImageIcon(Library.class.getResource("/bookAddtb.jpg"));//添加菜单栏图标 bookAddButton.setIcon(icon); bookAddButton.setHideActionText(true); //bookAddButton.setToolTipText("fjdkjfk");//图片上提示字 toolBar.add(bookAddButton); //toolBar.add(MenuActions.BOOK_MODIFY); //在工具栏中添加图书修改与删除图标 JButtonbookModiAndDelButton=newJButton(MenuActions.BOOK_MODIFY); ImageIconbookmodiicon=CreatecdIcon.add("bookModiAndDeltb.jpg");//创建图标方法 bookModiAndDelButton.setIcon(bookmodiicon); bookModiAndDelButton.setHideActionText(true); toolBar.add(bookModiAndDelButton); JButtonbookTypeAddButton=newJButton(MenuActions.BOOKTYPE_ADD); ImageIconbookTypeAddicon=CreatecdIcon.add("bookTypeAddtb.jpg");//创建图标方法 bookTypeAddButton.setIcon(bookTypeAddicon); bookTypeAddButton.setHideActionText(true); toolBar.add(bookTypeAddButton); JButtonbookBorrowButton=newJButton(MenuActions.BORROW); ImageIconbookBorrowicon=CreatecdIcon.add("bookBorrowtb.jpg");//创建图标方法 bookBorrowButton.setIcon(bookBorrowicon); bookBorrowButton.setHideActionText(true); toolBar.add(bookBorrowButton); JButtonbookOrderButton=newJButton(MenuActions.NEWBOOK_ORDER); ImageIconbookOrdericon=CreatecdIcon.add("bookOrdertb.jpg");//创建图标方法 bookOrderButton.setIcon(bookOrdericon); bookOrderButton.setHideActionText(true); toolBar.add(bookOrderButton); JButtonbookCheckButton=newJButton(MenuActions.NEWBOOK_CHECK_ACCEPT); ImageIconbookCheckicon=CreatecdIcon.add("newbookChecktb.jpg");//创建图标方法 bookCheckButton.setIcon(bookCheckicon); bookCheckButton.setHideActionText(true); toolBar.add(bookCheckButton); JButtonreaderAddButton=newJButton(MenuActions.READER_ADD); ImageIconreaderAddicon=CreatecdIcon.add("readerAddtb.jpg");//创建图标方法 readerAddButton.setIcon(readerAddicon); readerAddButton.setHideActionText(true); toolBar.add(readerAddButton); JButtonreaderModiAndDelButton=newJButton(MenuActions.READER_MODIFY); ImageIconreaderModiAndDelicon=CreatecdIcon.add("readerModiAndDeltb.jpg");//创建图标方法 readerModiAndDelButton.setIcon(readerModiAndDelicon); readerModiAndDelButton.setHideActionText(true); toolBar.add(readerModiAndDelButton); JButtonExitButton=newJButton(MenuActions.EXIT); ImageIconExiticon=CreatecdIcon.add("exittb.jpg");//创建图标方法 ExitButton.setIcon(Exiticon); ExitButton.setHideActionText(true); toolBar.add(ExitButton); returntoolBar; } /** *创建菜单栏 */ privateJMenuBarcreateMenu(){//创建菜单栏的方法 JMenuBarmenuBar=newJMenuBar(); JMenubookOrderMenu=newJMenu();//初始化新书订购管理菜单 bookOrderMenu.setIcon(CreatecdIcon.add("xsdgcd.jpg")); bookOrderMenu.add(MenuActions.NEWBOOK_ORDER); bookOrderMenu.add(MenuActions.NEWBOOK_CHECK_ACCEPT); JMenubaseMenu=newJMenu();//初始化基础数据维护菜单 baseMenu.setIcon(CreatecdIcon.add("jcsjcd.jpg")); { JMenureaderManagerMItem=newJMenu("读者信息管理"); readerManagerMItem.add(MenuActions.READER_ADD); readerManagerMItem.add(MenuActions.READER_MODIFY); JMenubookTypeManageMItem=newJMenu("图书类别管理"); bookTypeManageMItem.add(MenuActions.BOOKTYPE_ADD); bookTypeManageMItem.add(MenuActions.BOOKTYPE_MODIFY); JMenumenu=newJMenu("图书信息管理"); menu.add(MenuActions.BOOK_ADD); menu.add(MenuActions.BOOK_MODIFY); baseMenu.add(readerManagerMItem); baseMenu.add(bookTypeManageMItem); baseMenu.add(menu); baseMenu.addSeparator(); baseMenu.add(MenuActions.EXIT); } JMenuborrowManageMenu=newJMenu();//借阅管理 borrowManageMenu.setIcon(CreatecdIcon.add("jyglcd.jpg")); borrowManageMenu.add(MenuActions.BORROW);//借阅 borrowManageMenu.add(MenuActions.GIVE_BACK);//归还 borrowManageMenu.add(MenuActions.BOOK_SEARCH);//搜索 JMenusysManageMenu=newJMenu();//系统维护 sysManageMenu.setIcon(CreatecdIcon.add("jcwhcd.jpg")); JMenuuserManageMItem=newJMenu("用户管理");//用户管理 userManageMItem.add(MenuActions.USER_ADD); userManageMItem.add(MenuActions.USER_MODIFY); sysManageMenu.add(MenuActions.MODIFY_PASSWORD); sysManageMenu.add(userManageMItem); menuBar.add(baseMenu);//添加基础数据维护菜单到菜单栏 menuBar.add(bookOrderMenu);//添加新书订购管理菜单到菜单栏 menuBar.add(borrowManageMenu);//添加借阅管理菜单到菜单栏 menuBar.add(sysManageMenu);//添加系统维护菜单到菜单栏 returnmenuBar; } } 八、总结 经过这次的学习。 了解了关于数据库程序设计,学习了JDBC的连接方法,更加深入的学习了SQLServer的使用,通过对Eclipse中WindowsBuilder插件的学习和使用,方便快捷的进行可视化界面开发,大大提高了系统开发的效率。 参考文献 [1]罗超理,李万红.管理信息系统原理与应用[M].清华大学出版社,2002 [2]艾德才.计算机信息管理基础[M].中国水利水电出版社,2001 [3]JeffRobin.ManagementofInformationSystem[M].机械工业出版社,2002 [4]TimFLee.ImplementMIS[M].北京出版社,2001
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 设计