管理系统应用于高校的图书馆中,用户数据以及图书的信息数据并不是很大。考虑到成本,选用了MySQL数据库。下面将详细的为您介绍本设计中数据库的选择以及数据库的概念设计等。
3.1 数据库分析
MySQL具有很强的完整性与可伸缩性,性价比很高。考虑到本系统的稳定性、可靠性,我决定在设计该系统是选择MySQL数据库来满足系统的需求。
3.2 数据库概念设计
根据以上对系统所作的需求分析、系统设计,规划出本系统中使用的数据库实体分别为图书信息实体、图书分类实体、图书订购实体、读者信息实体、图书借阅信息实体、库存信息实体。
以下为几个关键实体的E-R图。
1. 图书信息实体
图书信息实体包括图书编号、图书类别编号、书名、作者、出版社、价格、出版时间等属性。其中图书编号为图书信息实体的主键,图书类别编号为图书信息实体的外键,与图书分类实体具有外键关系。
图3-1 图书信息实体E-R图
2. 读者信息实体
读者信息实体包括条形码、、性别、年龄、电话、办证日期、证件号码等属性。其中条形码作为本实体的唯一标识。
图3-2 读者信息实体E-R图
3. 图书借阅信息实体
图书借阅信息实体包括编号、图书编号、读者编号、是否归还、借阅日期、归还日期等属性。编号作为图书借阅信息实体的唯一标识,包括两个外键,分别为图书编号与读者编号。
图3-3 图书借阅信息实体E-R图
4. 图书订购实体
图书订购实体主要包括图书编号,订购日期、订购数量、是否验收等属性。图书订购实体以图书编号与图书信息实体建立了关系。
图3-4 图书订购信息实体E-R图
第四章 主窗体设计
在整个系统中,主窗体部分显示了本系统的所有功能。在主窗体的设计中运用了Swing技术,完成了对菜单栏以及工具栏的设计。管理员通过主窗体可以进行相应的操作,实现系统的功能。普通用户也可以利用主窗体中的工具栏进行
常用的功能操作。下面将详细的展现主窗体的设计细节部分。
4.1 主窗体概述
管理员通过"系统登录"模块的验证后,可以登录到图书馆管理系统的主窗体。系统主窗体主要包括菜单栏、工具栏。用户在菜单栏中单击任一菜单项,即可执行相应的功能;工具栏为用户提供了经常使用的功能按钮。
4.2 主窗体的实现过程
主窗体的实现过程如下:
1. 创建Library类,在其构造函数中设置主窗体相关属性,如窗体大小、窗体标题等相关属性,还可以为窗体设置背景图片,并调用创建菜单栏与工具栏的方法,在主窗体中创建菜单栏与工具栏。关键代码如下:
public Library() {
super();
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setModalExclusionType(ModalExclusionType.APPLICATION_EXCLUDE);
setLocationByPlatform(true);
setSize(800, 600);
setTitle("图书馆管理系统");
JMenuBar menuBar = createMenu(); // 调用创建菜单栏的方法
setJMenuBar(menuBar);
JToolBar toolBar = createToolBar(); // 调用创建工具栏的方法
getContentPane().add(toolBar, BorderLayout.NORTH);
final JLabel label = new JLabel();
label.setBounds(0, 0, 0, 0);
label.setIcon(null); // 窗体背景
DESKTOP_PANE.addComponentListener(new ComponentAdapter() {
public void componentResized(final ComponentEvent e) {
Dimension size = e.getComponent().getSize();
label.setSize(e.getComponent().getSize());
label.setText("
");
}
});
DE