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


Posted in Java/Android onJune 30, 2021
目录
  • 设计准备
  • 一、系统开发目的和意义
  • 二、系统总体设计
    • 主页:
    • 系统主界面:
    • 图书添加页面:
    • 图书表单操作页面:
    • 搜索页面:
    • 维护界面
  • 三、数据库
  • 四、重要源码
    • 改变系统默认字体:
    • 重置事件处理:
    • 搜索事件处理:
    • 初始化表格
  • 总结

设计准备

编程工具:eclipse、MySQL5.5

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

心态:坚持

……

一、系统开发目的和意义

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

二、系统总体设计

主页:

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

系统主界面:

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

图书添加页面:

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

图书表单操作页面:

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

搜索页面:

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

维护界面

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

三、数据库

/*
SQLyog 企业版 - MySQL GUI v8.14 
MySQL - 5.5.56 : Database - db_book
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_book` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `db_book`;
/*Table structure for table `t_book` */
DROP TABLE IF EXISTS `t_book`;
CREATE TABLE `t_book` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `bookName` varchar(20) DEFAULT NULL,
  `author` varchar(20) DEFAULT NULL,
  `sex` varchar(10) DEFAULT NULL,
  `price` float DEFAULT NULL,
  `bookTypeId` int(11) DEFAULT NULL,
  `bookDesc` varchar(1000) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_t_book` (`bookTypeId`),
  CONSTRAINT `FK_t_book` FOREIGN KEY (`bookTypeId`) REFERENCES `t_booktype` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
/*Data for the table `t_book` */
insert  into `t_book`(`id`,`bookName`,`author`,`sex`,`price`,`bookTypeId`,`bookDesc`) values (6,'四级宝典','任月','女',36,9,'英语单词书'),(7,'java程序设计','煜柯','男',45,10,''),(8,'艺术百科','小月','女',23,8,'音乐,舞蹈等');
/*Table structure for table `t_booktype` */
DROP TABLE IF EXISTS `t_booktype`;
CREATE TABLE `t_booktype` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `bookTypeName` varchar(20) DEFAULT NULL,
  `bookTypeDesc` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;
/*Data for the table `t_booktype` */
insert  into `t_booktype`(`id`,`bookTypeName`,`bookTypeDesc`) values (8,'文学','各种文章'),(9,'英语','四六级'),(10,'应用','技能'),(11,'文学','文章');
/*Table structure for table `t_user` */
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `userName` varchar(20) DEFAULT NULL,
  `password` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
/*Data for the table `t_user` */
insert  into `t_user`(`id`,`userName`,`password`) values (1,'java1234','123');
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

四、重要源码

改变系统默认字体:

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

重置事件处理:

/**
	 * 重置事件处理
	 * @param evt
	 */
	private void resetValueActionPerformed(ActionEvent evt) {
		// TODO Auto-generated method stub
		this.resetValue();
	}
	/**
	 * 重置表单
	 */
	private void resetValue() {
		this.bookTypeNameTxt.setText("");
		this.bookTypeDescTxt.setText("");
	}

搜索事件处理:

/**
	 * 图书类别搜索事件处理
	 * @param evt
	 */
	private void bookTypeSearchActionPerformed(ActionEvent evt) {
		// TODO Auto-generated method stub
		String s_bookTypeName=this.s_bookTypeNameTxt.getText();
		BookType bookType=new BookType();
		bookType.setBookTypeName(s_bookTypeName);
		this.fillTable(bookType);
	}

初始化表格

/**
	 * 初始化表格
	 * @param bookType
	 */
	private void fillTable(BookType bookType) {
		DefaultTableModel dtm=(DefaultTableModel) bookTypeTable.getModel();
		dtm.setRowCount(0);//设置为0行
		Connection con=null;
		try {
			con=dbUtil.getCon();
			ResultSet rs=bookTypeDao.list(null, bookType);
			while(rs.next()) {
				Vector v=new Vector();
				v.add(rs.getString("id"));
				v.add(rs.getString("bookTypeName"));
				v.add(rs.getString("bookTypeDesc"));
				dtm.addRow(v);
			}
		}catch(Exception e) {
			e.printStackTrace();
		}finally {
			try {
				dbUtil.closeCon(con);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}

……

总结

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

Java/Android 相关文章推荐
Spring Data JPA的Audit功能审计数据库的变更
Jun 26 Java/Android
SpringBoot+VUE实现数据表格的实战
Aug 02 Java/Android
关于@OnetoMany关系映射的排序问题,使用注解@OrderBy
Dec 06 Java/Android
Eclipse+Java+Swing+Mysql实现电影购票系统(详细代码)
Jan 18 Java/Android
SpringBoot2零基础到精通之数据库专项精讲
Mar 22 Java/Android
SpringBoot整合minio快速入门教程(代码示例)
Apr 03 Java/Android
教你在 Java 中实现 Dijkstra 最短路算法的方法
Apr 08 Java/Android
mybatis 获取更新记录的id
May 20 Java/Android
Java实现扫雷游戏详细代码讲解
May 25 Java/Android
Android开发手册自定义Switch开关按钮控件
Jun 10 Java/Android
Android学习之BottomSheetDialog组件的使用
Jun 21 Java/Android
前端与RabbitMQ实时消息推送未读消息小红点实现示例
Jul 23 Java/Android
详解Java ES多节点任务的高效分发与收集实现
Jun 30 #Java/Android
mybatis中sql语句CDATA标签的用法说明
Jun 30 #Java/Android
总结Java对象被序列化的两种方法
Jun 30 #Java/Android
实体类或对象序列化时,忽略为空属性的操作
Jun 30 #Java/Android
Spring mvc是如何实现与数据库的前后端的连接操作的?
Jun 30 #Java/Android
HashMap实现保存两个key相同的数据
Jun 30 #Java/Android
spring boot项目application.properties文件存放及使用介绍
You might like
截获网站title标签之家内容的例子
2006/10/09 PHP
让你同时上传 1000 个文件 (一)
2006/10/09 PHP
PHP连接MySQL的2种方法小结以及防止乱码
2014/03/11 PHP
php+ajax实时刷新简单实例
2015/02/25 PHP
php实现PDO中捕获SQL语句错误的方法
2017/02/16 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
用JQuery 实现的自定义对话框
2007/03/24 Javascript
JavaScript 私有成员分析
2009/01/13 Javascript
Javascript(AJAX)解析XML的代码(兼容FIREFOX/IE)
2010/07/11 Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
2012/11/11 Javascript
jquery实现拖拽调整Div大小
2015/01/30 Javascript
AngularJS表单编辑提交功能实例
2015/02/13 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
AngularJS ng-repeat指令中使用track by子语句解决重复数据遍历错误问题
2017/01/21 Javascript
react.js使用webpack搭配环境的入门教程
2017/08/14 Javascript
JS判断数组那点事
2017/10/10 Javascript
微信小程序实现图片上传放大预览删除代码
2020/06/28 Javascript
解决layui表格内文本超出隐藏的问题
2019/09/12 Javascript
ElementUI多个子组件表单的校验管理实现
2019/11/07 Javascript
在Python的Flask框架下收发电子邮件的教程
2015/04/21 Python
Python实现高效求解素数代码实例
2015/06/30 Python
python pandas 对时间序列文件处理的实例
2018/06/22 Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
2018/07/12 Python
python实现点对点聊天程序
2018/07/28 Python
pthon贪吃蛇游戏详细代码
2019/01/27 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
2019/09/18 Python
python 已知三条边求三角形的角度案例
2020/04/12 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
网页布局中CSS样式无效的十个重要原因详解
2017/08/10 HTML / CSS
现代绅士日常奢侈品:Todd Snyder
2019/12/13 全球购物
运动会入场词60字
2014/02/15 职场文书
学校火灾防控方案
2014/06/09 职场文书
质量主管工作职责
2014/09/26 职场文书
南京大屠杀观后感
2015/06/02 职场文书
最美乡村教师观后感
2015/06/11 职场文书