Java图书管理系统,课程设计必用(源码+文档)

时间:2021-12-07 15:22:43
目录
  • 设计准备
  • 一、系统开发目的和意义
  • 二、系统总体设计
    • 主页:
    • 系统主界面:
    • 图书添加页面:
    • 图书表单操作页面:
    • 搜索页面:
    • 维护界面
  • 三、数据库
  • 四、重要源码
    • 改变系统默认字体:
    • 重置事件处理:
    • 搜索事件处理:
    • 初始化表格
  • 总结

设计准备

编程工具:eclipse、MySQL5.5

技术:java、JavaScript、jQuery、SQL、前端等

心态:坚持

……

一、系统开发目的和意义

为有效提升图书馆的管理效率,满足人们的各种必要需求,必 须在图书馆的日常管理中应用计算机管理系统。这样才能随着时代 发展不断提升图书馆的社会服务能力,使图书馆管理更具现代化特 征。系统故障会导致借书、还书出现异常。因此,安装系统时应选择质量过关的软件和硬件,要通过正规途径采购设备,选择的性能好、 运行快、存储空间大的计算机,还要选择专业的软件系统,这样才能保证检索、查阅资料、借书、还书等活动快速、高效的进行。图书馆配备了完善的计算机管理系统之后,读者就能通过手机等终端设备登录图书馆应用系统,通过小程序完成续借、查阅资料等操作,使图书馆的服务得到了优化和提升。

二、系统总体设计

 

主页:

Java图书管理系统,课程设计必用(源码+文档)

系统主界面:

Java图书管理系统,课程设计必用(源码+文档)

图书添加页面:

Java图书管理系统,课程设计必用(源码+文档)

图书表单操作页面:

Java图书管理系统,课程设计必用(源码+文档)

搜索页面:

Java图书管理系统,课程设计必用(源码+文档)

维护界面

Java图书管理系统,课程设计必用(源码+文档)

三、数据库

  1. /*
  2. SQLyog 企业版 - MySQL GUI v8.14
  3. MySQL - 5.5.56 : Database - db_book
  4. *********************************************************************
  5. */
  6. /*!40101 SET NAMES utf8 */;
  7. /*!40101 SET SQL_MODE=''*/;
  8. /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
  9. /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
  10. /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
  11. /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
  12. CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_book` /*!40100 DEFAULT CHARACTER SET utf8 */;
  13. USE `db_book`;
  14. /*Table structure for table `t_book` */
  15. DROP TABLE IF EXISTS `t_book`;
  16. CREATE TABLE `t_book` (
  17. `id` int(11) NOT NULL AUTO_INCREMENT,
  18. `bookName` varchar(20) DEFAULT NULL,
  19. `author` varchar(20) DEFAULT NULL,
  20. `sex` varchar(10) DEFAULT NULL,
  21. `price` float DEFAULT NULL,
  22. `bookTypeId` int(11) DEFAULT NULL,
  23. `bookDesc` varchar(1000) DEFAULT NULL,
  24. PRIMARY KEY (`id`),
  25. KEY `FK_t_book` (`bookTypeId`),
  26. CONSTRAINT `FK_t_book` FOREIGN KEY (`bookTypeId`) REFERENCES `t_booktype` (`id`)
  27. ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
  28. /*Data for the table `t_book` */
  29. insert into `t_book`(`id`,`bookName`,`author`,`sex`,`price`,`bookTypeId`,`bookDesc`) values (6,'四级宝典','任月','女',36,9,'英语单词书'),(7,'java程序设计','煜柯','男',45,10,''),(8,'艺术百科','小月','女',23,8,'音乐,舞蹈等');
  30. /*Table structure for table `t_booktype` */
  31. DROP TABLE IF EXISTS `t_booktype`;
  32. CREATE TABLE `t_booktype` (
  33. `id` int(11) NOT NULL AUTO_INCREMENT,
  34. `bookTypeName` varchar(20) DEFAULT NULL,
  35. `bookTypeDesc` varchar(20) DEFAULT NULL,
  36. PRIMARY KEY (`id`)
  37. ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;
  38. /*Data for the table `t_booktype` */
  39. insert into `t_booktype`(`id`,`bookTypeName`,`bookTypeDesc`) values (8,'文学','各种文章'),(9,'英语','四六级'),(10,'应用','技能'),(11,'文学','文章');
  40. /*Table structure for table `t_user` */
  41. DROP TABLE IF EXISTS `t_user`;
  42. CREATE TABLE `t_user` (
  43. `id` int(11) NOT NULL AUTO_INCREMENT,
  44. `userName` varchar(20) DEFAULT NULL,
  45. `password` varchar(20) DEFAULT NULL,
  46. PRIMARY KEY (`id`)
  47. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
  48. /*Data for the table `t_user` */
  49. insert into `t_user`(`id`,`userName`,`password`) values (1,'java1234','123');
  50. /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
  51. /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
  52. /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
  53. /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

四、重要源码

 

改变系统默认字体:

  1. //改变系统默认字体
  2. Font font = new Font("Dialog", Font.PLAIN, 12);
  3. java.util.Enumeration keys = UIManager.getDefaults().keys();
  4. while (keys.hasMoreElements()) {
  5. Object key = keys.nextElement();
  6. Object value = UIManager.get(key);
  7. if (value instanceof javax.swing.plaf.FontUIResource) {
  8. UIManager.put(key, font);
  9. }
  10. }

重置事件处理:

  1. /**
  2. * 重置事件处理
  3. * @param evt
  4. */
  5. private void resetValueActionPerformed(ActionEvent evt) {
  6. // TODO Auto-generated method stub
  7. this.resetValue();
  8. }
  9. /**
  10. * 重置表单
  11. */
  12. private void resetValue() {
  13. this.bookTypeNameTxt.setText("");
  14. this.bookTypeDescTxt.setText("");
  15. }

搜索事件处理:

  1. /**
  2. * 图书类别搜索事件处理
  3. * @param evt
  4. */
  5. private void bookTypeSearchActionPerformed(ActionEvent evt) {
  6. // TODO Auto-generated method stub
  7. String s_bookTypeName=this.s_bookTypeNameTxt.getText();
  8. BookType bookType=new BookType();
  9. bookType.setBookTypeName(s_bookTypeName);
  10. this.fillTable(bookType);
  11. }

初始化表格

  1. /**
  2. * 初始化表格
  3. * @param bookType
  4. */
  5. private void fillTable(BookType bookType) {
  6. DefaultTableModel dtm=(DefaultTableModel) bookTypeTable.getModel();
  7. dtm.setRowCount(0);//设置为0行
  8. Connection con=null;
  9. try {
  10. con=dbUtil.getCon();
  11. ResultSet rs=bookTypeDao.list(null, bookType);
  12. while(rs.next()) {
  13. Vector v=new Vector();
  14. v.add(rs.getString("id"));
  15. v.add(rs.getString("bookTypeName"));
  16. v.add(rs.getString("bookTypeDesc"));
  17. dtm.addRow(v);
  18. }
  19. }catch(Exception e) {
  20. e.printStackTrace();
  21. }finally {
  22. try {
  23. dbUtil.closeCon(con);
  24. } catch (Exception e) {
  25. // TODO Auto-generated catch block
  26. e.printStackTrace();
  27. }
  28. }

……

总结

本篇文章就到这里了,希望可以帮助到你,也希望您能够多多关注我们的更多内容!

原文链接:https://blog.csdn.net/qinluyu111/article/details/117912749