Java图书馆管理系统(附全代码)_课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据库系统概论》课程报告
课题名称:小型图书管理系统
课题负责人名(学号): best
同组成员名单(角色):
指导教师:
评阅成绩:
评阅意见:
提交报告时间:2015年12月15日
小型图书管理系统
计算机科学与技术专业
学生指导老师
[摘要]随着计算机技术的飞速发展,利用计算机来获得和处理信息是当今信息管理的一大特点。伴随计算机硬件的快速发展,有关信息管理的软件——数据库系统软件也在迅猛发展着。图书馆是高等院校的重要组成部门,是教师和学生获取知识的重要场所。由于图书馆主要从事大量的图书资料的储存和流通。所以一直以来,计算机在图书馆的图书管理中得到了广泛的应用。本系统实现图书信息管理的系统化,规范化和自动化,以最大程度提高操作人员的办公效率。
关键词:JAVA、JDBC、SQL Server、数据库、图书馆管理
一、实验题目:小型图书管理系统
二、实验的目的和要求:
完成一个小型图书管理系统,功能要求如下:
1)能够通过书籍基本信息(包括:书号、书名、出版社、出版日期、作者、内容摘要)单个
或以AND方式组合多个条件查询书籍信息;
2)对于每一种书籍,除可查看其基本信息之外还可查看其总数以及目前在馆数量
3)可增添新的书籍
4)可删除已有书籍(如有读者借了该书籍尚未归还,则不允许删除)
5)可修改书籍的基本信息
6)能够通过读者基本信息(包括:证号、姓名、性别、系名、年级)单个或以AND方式组
合多个条件查询读者信息
7)对于每位读者除可查看其基本信息之外,还可查看其已借的书籍列表、数量、借还日期
8)可增添新的读者
9)可删除已有读者(如该读者有尚未归还的借书,则不允许删除)
10)可修改读者的基本信息
11)可完成借还书籍的手续
12)还书时如超期,应该显示超期天数
13)借书时如果有超期的书没有还,则不允许借书
14)可查询有哪些读者有超期的书没有还,列出这些读者的基本信息
三、实验的环境:
1、硬件环境:CPU: Intel(R) Core i5-3230 2.60GHz
RAM: 8GB
2、软件环境:操作系统:Windows 7 Ultimate SP1
编译软件:Eclipse Luna
Microsoft SQL Server 2014
四、系统ER图
图书
管理员
管理读者
借阅
管理
编号性别姓名系名
年级
编号书名
作者出版社
出版时间摘要总量
现存量
用户名
密码
应还时间拥有
权限
删除图书修改读者
修改图书
删除读者添加读者添加图书
超期时间借阅时间
五、表结构定义(使用表格说明)
六、系统功能模块
1)能够通过书籍基本信息单个或组合多个条件查询书籍信息;
2)对于每一种书籍,除可查看其基本信息之外还可查看其总数以及目前在馆数量
3)可增添新的书籍
4)可删除已有书籍(如有读者借了该书籍尚未归还,则不允许删除)
5)可修改书籍的基本信息
6)能够通过读者基本信息单个或组合多个条件查询读者信息
7)对于每位读者除可查看其基本信息之外,还可查看其已借的书籍列表、数量、借还日期
8)可增添新的读者
9)可删除已有读者(如该读者有尚未归还的借书,则不允许删除)
10)可修改读者的基本信息
11)可完成借还书籍的手续
12)还书时如超期,应该显示超期天数
13) 借书时如果有超期的书没有还,则不允许借书
14)
可查询有哪些读者有超期的书没有还,列出这些读者的基本信息
七、程序框架流程图
九、程序运行结果
登录
主界面
图书管理读者管理借阅列表
增加读者编辑读者删除读者组合查询
增加书籍编辑书籍删除书籍组合查询借阅书籍归还书籍详细信息详细信息
八、核心代码
AddBook.java
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.*;
import java.util.ArrayList;
import javax.swing.*;
public class AddBook extends JFrame implements ActionListener { SQLOperation op = new SQLOperation();
Container c = getContentPane();
JPanel p1 = new JPanel();
JLabel bookNumber = new JLabel("Book Number:");
JLabel bookName = new JLabel("Book Name:");
JLabel bookAuthor = new JLabel("Book Author:");
JLabel press = new JLabel("Press:");
JLabel pressTime = new JLabel("Press time:");
JLabel bookAbstract = new JLabel("Abstract:");
JLabel storage = new JLabel("Storage:");
JLabel remain = new JLabel("Remain");
JLabel remain1 = new JLabel("Update with Storage");
JTextField numberField = new JTextField();
JTextField nameField = new JTextField();
JTextField authorField = new JTextField();