收藏 分享(赏)

Java 图书馆管理系统(附全代码)_课程设计报告.doc

上传人:tangtianxu2 文档编号:2873171 上传时间:2018-09-29 格式:DOC 页数:80 大小:1.42MB
下载 相关 举报
Java 图书馆管理系统(附全代码)_课程设计报告.doc_第1页
第1页 / 共80页
Java 图书馆管理系统(附全代码)_课程设计报告.doc_第2页
第2页 / 共80页
Java 图书馆管理系统(附全代码)_课程设计报告.doc_第3页
第3页 / 共80页
Java 图书馆管理系统(附全代码)_课程设计报告.doc_第4页
第4页 / 共80页
Java 图书馆管理系统(附全代码)_课程设计报告.doc_第5页
第5页 / 共80页
点击查看更多>>
资源描述

1、数据库系统概论课程报告课题名称: 小型图书管理系统课题负责人名(学号): best同组成员名单(角色): 指导教师: 评阅成绩: 评阅意见: 提交报告时间:2015 年 12 月 15 日课程名称:数据库系统概论-1-小型图书管理系统计算机科学与技术 专业学生 指导老师 摘要 随着计算机技术的飞速发展,利用计算机来获得和处理信息是当今信息管理的一大特点。伴随计算机硬件的快速发展,有关信息管理的软件数据库系统软件也在迅猛发展着。图书馆是高等院校的重要组成部门,是教师和学生获取知识的重要场所。由于图书馆主要从事大量的图书资料的储存和流通。所以一直以来,计算机在图书馆的图书管理中得到了广泛的应用。本

2、系统实现图书信息管理的系统化,规范化和自动化,以最大程度提高操作人员的办公效率。关键词:JAVA、JDBC、SQL Server、数据库、图书馆管理课程名称:数据库系统概论-2-一、实验题目:小型图书管理系统二、实验的目的和要求:完成一个小型图书管理系统,功能要求如下:1) 能够通过书籍基本信息(包括:书号、书名、出版社、出版日期、作者、内容摘要)单个或以 AND 方式组合多个条件查询书籍信息;2) 对于每一种书籍,除可查看其基本信息之外还可查看其总数以及目前在馆数量3) 可增添新的书籍4) 可删除已有书籍(如有读者借了该书籍尚未归还,则不允许删除)5) 可修改书籍的基本信息6) 能够通过读者

3、基本信息(包括:证号、姓名、性别、系名、年级)单个或以 AND 方式组合多个条件查询读者信息7) 对于每位读者除可查看其基本信息之外,还可查看其已借的书籍列表、数量、借还日期8) 可增添新的读者9) 可删除已有读者(如该读者有尚未归还的借书,则不允许删除)10) 可修改读者的基本信息课程名称:数据库系统概论-3-11) 可完成借还书籍的手续12) 还书时如超期,应该显示超期天数13) 借书时如果有超期的书没有还,则不允许借书14) 可查询有哪些读者有超期的书没有还,列出这些读者的基本信息三、实验的环境:1、硬件环境:CPU: Intel(R) Core i5-3230 2.60GHzRAM:

4、8GB2、软件环境:操作系统:Windows 7 Ultimate SP1编译软件:Eclipse LunaMicrosoft SQL Server 2014四、 系统ER 图图 书管 理 员管 理读 者 借 阅管 理编 号性 别姓 名系 名年 级编 号书 名作 者出 版 社出 版 时 间摘 要总 量现 存 量用 户 名 密 码应 还 时 间拥 有权 限删 除 图 书修 改 读 者 修 改 图 书删 除 读 者添 加 读 者 添 加 图 书超 期 时 间 借 阅 时 间五、 表结构 定义( 使用表 格说课程名称:数据库系统概论-4-明)课程名称:数据库系统概论-6-课程名称:数据库系统概论-7

5、-课程名称:数据库系统概论-8-六、系统功能模块1) 能够通过书籍基本信息单个或组合多个条件查询书籍信息;2) 对于每一种书籍,除可查看其基本信息之外还可查看其总数以课程名称:数据库系统概论-9-及目前在馆数量3) 可增添新的书籍4) 可删除已有书籍(如有读者借了该书籍尚未归还,则不允许删除)5) 可修改书籍的基本信息6) 能够通过读者基本信息单个或组合多个条件查询读者信息7) 对于每位读者除可查看其基本信息之外,还可查看其已借的书籍列表、数量、借还日期8) 可增添新的读者9) 可删除已有读者(如该读者有尚未归还的借书,则不允许删除)10) 可修改读者的基本信息11) 可完成借还书籍的手续12

6、) 还书时如超期,应该显示超期天数13) 借书时如果有超期的书没有还,则不允许借书14) 可查询有哪些读者有超期的书没有还,列出这些读者的基本信息七、程序框架流程图课程名称:数据库系统概论-10-登 录主 界 面图 书 管 理 读 者 管 理 借 阅 列 表增加读者编辑读者删除读者组合查询增加书籍编辑书籍删除书籍组合查询借阅书籍归还书籍详细信息详细信息课程名称:数据库系统概论-11-九、程序运行结果课程名称:数据库系统概论-12-课程名称:数据库系统概论-13-课程名称:数据库系统概论-14-课程名称:数据库系统概论-15-八、核心代码AddBook.javaimport java.awt.B

7、orderLayout;import java.awt.Container;import java.awt.GridLayout;import java.awt.event.*;import java.util.ArrayList;import javax.swing.*;课程名称:数据库系统概论-16-public class AddBook extends JFrame implements ActionListener SQLOperation op = new SQLOperation();Container c = getContentPane();JPanel p1 = new J

8、Panel();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(

9、“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();JTextField pressField = new JTextField();JTextField pressTimeField = new JTe

10、xtField();JTextField abstractField = new JTextField();JTextField storageField = new JTextField();JButton cancel = new JButton(“Cancel“);JButton confirm = new JButton(“Confirm!“);public AddBook() c.add(p1, BorderLayout.NORTH);p1.setLayout(new GridLayout(9, 2, 20, 10);p1.add(bookNumber);p1.add(numberF

11、ield);p1.add(bookName);p1.add(nameField);p1.add(bookAuthor);p1.add(authorField);p1.add(press);p1.add(pressField);p1.add(pressTime);p1.add(pressTimeField);p1.add(bookAbstract);p1.add(abstractField);p1.add(storage);课程名称:数据库系统概论-17-p1.add(storageField);p1.add(remain);p1.add(remain1);p1.add(cancel);p1.a

12、dd(confirm);cancel.addActionListener(this);confirm.addActionListener(this);public void actionPerformed(ActionEvent e) / TODO Auto-generated method stubif (e.getSource() = cancel) this.dispose();if (e.getSource() = confirm) this.dispose();BookInfo book = new BookInfo(numberField.getText(),nameField.g

13、etText(), authorField.getText(),pressField.getText(), pressTimeField.getText(),abstractField.getText(), Integer.parseInt(storageField.getText(),Integer.parseInt(storageField.getText();ArrayList strArray = new ArrayList();strArray = op.addBookJudgement();int n = 0;int replicate = 0;while (n strArray

14、= new ArrayList();strArray = op.addReaderJudgement();int n = 0;int replicate = 0;while (n strArray = new ArrayList();strArray = op.outputBook(book);numberField.setText(number);nameField.setText(strArray.get(1);authorField.setText(strArray.get(2);pressField.setText(strArray.get(3);pressTimeField.setT

15、ext(strArray.get(4);abstractField.setText(strArray.get(5);storageField.setText(strArray.get(6);remainField.setText(strArray.get(7);c.add(p1, BorderLayout.NORTH);c.add(p2, BorderLayout.CENTER);c.add(p3, BorderLayout.SOUTH);p1.setLayout(new GridLayout(9, 2, 20, 10);p1.add(bookNumber);p1.add(numberFiel

16、d);课程名称:数据库系统概论-23-p1.add(bookName);p1.add(nameField);p1.add(author);p1.add(authorField);p1.add(press);p1.add(pressField);p1.add(pressTime);p1.add(pressTimeField);p1.add(bookAbstract);p1.add(abstractField);p1.add(storage);p1.add(storageField);p1.add(remain);p1.add(remainField);p1.add(details);scroll

17、Pane.setBounds(0, 0, 800, 300);p2.add(scrollPane);p3.add(cancel);table.setPreferredScrollableViewportSize(new Dimension(400, 100);cancel.addActionListener(this);public void actionPerformed(ActionEvent e) / TODO Auto-generated method stubif (e.getSource() = cancel) this.dispose();BookInfo.javapublic

18、class BookInfo 课程名称:数据库系统概论-24-private String number, name, author, press, pressTime, bookAbstract;private int total, remain;/ default constructorpublic BookInfo() public BookInfo(String number) this.number = number;public BookInfo(String number, String name) this.number = number;this.name = name;pu

19、blic BookInfo(String number, String name, String author, String press,String pressTime, String bookAbstract, int total, int remain) this.number = number;this.name = name;this.author = author;this.press = press;this.pressTime = pressTime;this.bookAbstract = bookAbstract;this.total = total;this.remain

20、 = remain;public void setRemain(int i) this.remain=i;public String getNumber() return number;public String getName() return name;课程名称:数据库系统概论-25-public String getAuthor() return author;public String getPress() return press;public String getPressTime() return pressTime;public String getBookAbstract()

21、 return bookAbstract;public int getTotal() return total;public int getRemain() return remain;BookRetrieval.javaimport java.awt.BorderLayout;import java.awt.Container;import java.awt.Dimension;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.*;课程名称:数据库系统概论-26-import java.util.Arr

22、ayList;import javax.swing.*;import javax.swing.table.DefaultTableModel;class BookRetrieval extends JFrame implements ActionListener SQLOperation op = new SQLOperation();Container c = getContentPane();JPanel p1 = new JPanel();JPanel p4 = new JPanel();JPanel p5 = new JPanel();JLabel bookNumber = new J

23、Label(“Book Number:“);JLabel bookName = new JLabel(“Book Name:“);JTextField number = new JTextField();JTextField name = new JTextField();JButton back = new JButton(“Back (Fresh)“);JButton addBook = new JButton(“Add a book“);JButton deleteBook = new JButton(“Delete a book“);JButton editBook = new JBu

24、tton(“Edit a book“);JButton search = new JButton(“Search for details!“);JButton borrowBook = new JButton(“Borrow a book“);JButton returnBook = new JButton(“Return a book“);Font font1 = new Font(“00“, Font.BOLD, 20);Object s = “Number“, “Name“, “Author“, “Press“, “Press Time“,“Abstract“, “Storage“, “

25、Remain“ ;Object ob = new Object408;JTable table = new JTable(ob, s);JScrollPane scrollPane = new JScrollPane(table);public BookRetrieval() BookInfo book = new BookInfo();ob = op.allBook(book);for (int i = 0; i strArray = new ArrayList();strArray = op.addBookJudgement();String s1 = number.getText();课

26、程名称:数据库系统概论-28-String s2 = name.getText();int n = 0;int replicate = 0;while (n strArray1 = new ArrayList();strArray1 = op.addBookJudgement1();int n1 = 0;int replicate1 = 0;while (n1 Integer.parseInt(strArray1.get(0) n1+;if (s2.equals(strArray1.get(n1) replicate1+;if (replicate = 0 else if (replicate

27、 != 0 | replicate1 != 0) if (replicate = 0 String s = op.searchBookByName(book);BookDetails f = new BookDetails(s);/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Book Details“);f.setLocation(300, 200);f.setSize(480, 470);f.setVisible(true); else if (replicate != 0) 课程名称:数据库系统概论-29-Bo

28、okDetails f = new BookDetails(s1);/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Book Details“);f.setLocation(300, 200);f.setSize(480, 470);f.setVisible(true);if (e.getSource() = back) this.dispose();MyFrame f = new MyFrame();/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTi

29、tle(“Library Management System“);f.setLocation(300, 200);f.setSize(580, 300);f.setVisible(true);if (e.getSource() = addBook) AddBook f = new AddBook();/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Add a book“);f.setLocation(300, 200);f.setSize(300, 400);f.setVisible(true);if (e.getS

30、ource() = deleteBook) DeleteBook f = new DeleteBook();/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Delete a book“);f.setLocation(300, 200);f.setSize(300, 200);f.setVisible(true);if (e.getSource() = borrowBook) BorrowBook f = new BorrowBook();/ f.setDefaultCloseOperation(JFrame.EXIT

31、_ON_CLOSE);f.setTitle(“Borrow a book“);课程名称:数据库系统概论-30-f.setLocation(300, 200);f.setSize(300, 200);f.setVisible(true);if (e.getSource() = returnBook) ReturnBook f = new ReturnBook();/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Return a book“);f.setLocation(300, 200);f.setSize(300,

32、200);f.setVisible(true);if (e.getSource() = editBook) SelectEdit f = new SelectEdit();/ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setTitle(“Edit a book“);f.setLocation(300, 200);f.setSize(300, 200);f.setVisible(true);BorrowBook.javaimport java.awt.BorderLayout;import java.awt.Container;import java.awt.GridLayout;import java.awt.event.*;import java.util.ArrayList;import javax.swing.*;public class BorrowBook extends JFrame implements ActionListener SQLOperation op = new SQLOperation();Container c = getContentPane();JPanel p1 = new JPanel();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报