Spring/MySQL数据库简单图书系统——(课程设计)
基于Spring Boot的简单图书系统
这个是一个数据库课程的课程设计,设计的十分简单。不足之处,还请见谅。
开发背景
数据库技术和Internet的飞速发展,使它们已经成为现代信息技术的重要组成部分,是现在计算机信息系统和计算机应用系统的基础和核心。对于任何一个企业来说,数据是企业重要的资产,如何有效利用这些数据,对于企业发展起着极其重要的作用。随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆藏书的树木逐渐增大,这也挑战了图书管理方面的技术,以前的人工管理方式已经不再适应现在的环境,取而代之的是先进的图书管理系统,通过使用web创建的图书管理系统可以让管理人员方便而快捷的进行管理、查询、借阅、录入等工作。
需求分析
系统目标
图书管理信息系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强.数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
系统开发的总体任务是实现各种信息的系统化,规范化和自动化。
需求定义
图书馆管理系统开发。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。
本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。
本系统结构层次为读者和管理员两个用户层次,并分别对图书系统进行不同层面的使用何管理。管理员可以对图书的信息进行初步的了解和更改,比如添加图书,更改图书的库存,备份数据库等功能;而对于一般的读者用户而言,则可以通过该平台使用借阅和归还和查询的功能。
其系统的功能模块图如下:
针对一般图书管理信息系统的需求,通过对图书管理工作过程的内容和数据流程分析,设计如下面所示的数据项:
CREATE TABLE `user` ( `id` int NOT NULL AUTO_INCREMENT, `name` varchar(30) DEFAULT NULL, `pwd` varchar(30) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=106 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
书籍信息
CREATE TABLE `book` ( `name` varchar(64) NOT NULL, `author` varchar(64) NOT NULL, `publisher` varchar(128) NOT NULL, `ISBN` varchar(64) NOT NULL, `introduction` varchar(128) DEFAULT NULL, `date` date NOT NULL, `price` double NOT NULL, `stock` int NOT NULL, `website` varchar(64) DEFAULT NULL, PRIMARY KEY (`ISBN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT=书籍
管理员信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1gX1NCbY-1601291474286)(file:///C:UsersASUSAppDataLocalTempksohtml11504wps2.jpg)]
CREATE TABLE `admin` ( `email` varchar(64) NOT NULL, `password` varchar(64) NOT NULL, PRIMARY KEY (`email`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
数据流程
一般读者
作为学生对图书管理系统的要求有:
- 能够方便地借阅图书、归还图书。
- 能够熟悉图书管理系统的使用。
读者进入系统工作的流程图为:
图书管理员工作流程图
3.功能描述
系统功能分析是在系统开发的总体任务的基础上完成。本系统需要完成的功能主要2部分:
(1) 图书基本情况的录入,修改,删除等基本操作。
(2) 能方便的对图书进行查询。
4.概念模型设计
各部分E-R图如下:
(1)一般读者信息类别实体E-R图
(2)书籍信息类别实体E-R图
(3)图书借阅单实体E-R图:
借阅关系(读者、管理员、书籍三元关系)
技术选型
前端
-
html css js Thymleaf
后端
-
Java Spring Spring Boot2.x MyBatis MySQL