[内附完整源码和文档] 基于ThinkPhp框架的高校图书馆藏书借阅系统
二、功能设计
2.1 数据库设计
2.1.1 需求分析
(1)系统任务
我们所要做的是一个高校图书馆藏书借阅系统,用于读者对图书的检索、浏览、借阅。因此,需要的功能包括对图书的检索查询、借阅、预约、续借、安全性保障。
而在拓展功能板块,我们的考虑为以图书为中心建立起图书与图书之间的关系,图书与人之间的关系,以图书为中心的推荐系统强调的是如何建立起有效的链接关系。
(2)有需求的用户组成
对此系统有需求的用户是有浏览、借阅图书需求的读者——由教师、学生、普通游客组成。其中,教师、学生是有借阅/预约图书资格的用户,而且借阅权限有所不同;普通游客是那些非本校的、可以浏览、检索此系统所藏图书而没有借阅和预约资格的用户。
(3)用户的信息要求
教师与学生使用此系统主要用于检索、浏览、借阅图书,包括查询书目信息,借书、还书,预约与续借。教师与学生为获得借阅资格,需要在此系统上进行用户注册并登陆,然后通过检索,并根据每本书的书目信息——其ISBN、标题、摘要、封面图、出版者、出版年份、中图法的图书分类号、价格来确定所借阅的图书。
教师与学生还有对自身用户状态的信息需求,包括借阅记录、预约记录、信用值、是否被罚款等。
同时,还有对所需图书的借阅状态的信息需求,比如只有知道此书是否已被他人预约而确定能否续借等。额外的需求还有图书推荐等。
普通游客不需要进行用户注册和登陆,只是浏览,其需求包括了解此系统内所含图书的大体信息,比如标题、封面图、摘要等从而了解馆藏的大致情况。
(4)系统边界
对此系统的人工操作包括供图书馆管理员操作的图书的录入,新用户的等级,图书的修改,用户的修改等,而数据库管理员拥有上述的所有权限,并且能够定义用户的权限等。总体而言,DBA拥有对于系统的全部掌握。
2.1.2 概念结构设计
首先分析数据库描述的主要对象中有哪些实体,最主要的便是书和用户,此外还有拥有最高操作权限的数据库管理员。
书和用户存在着:借阅、(反复)预约关系
借阅会有如下情形:按时归还与逾期还书、丢失、续借
预约则有如下要求:
仅能在到期时间前5天进行续借
如果此书已被人预约,则不可续借
多人续借同一本书则按照预约时间进行排队
特别注意的地方:
作者和译者本是书的两个属性,但是现实中存在一本书存在多个作者和译者的情形,所以需要单独为作者和译者建立一个表(由于作者和译者没有属性上的差别,且同一个人既可能是作者有可能是另外书籍的译者),另外建立书-作者表和书-译者表
图书有ISBN号作为同一版本同一书籍的唯一标识码,但是图书管中存在同一本书的多个复本,由此建立书目表和复本表。书目表记录同一书籍的书目信息,复本表记录各个复本的流通情况
用户分为三类:学生读者、教师读者、图书馆管理员。其中学生读者和教师读者的借阅权限有所不同;图书馆管理员可以修改学生和教师的权限,修改书目信息,但不能修改自己的权限;数据库管理员可以修改三类用户的权限和数据库的其它信息
完整的源码和详细的文档,上传到了 WRITE-BUG技术共享平台 上,需要的请自取:
https://www.write-bug.com/article/3156.html
[内附完整源码和文档] 基于ThinkPhp框架的高校图书馆藏书借阅系统相关推荐
- [内附完整源码和文档] 基于JSP的银行柜员业务绩效考核系统的设计与实现
摘 要 当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料.能源.信息)之一.信息是管理的基础,是进行决策的的基本依据.在一个组织里,信息己作为人力.物力 ...
- 基于ThinkPhp框架的高校图书馆藏书借阅系统
一.概述 使用了ThinkPHP,虽然本人觉得该框架实在有点反人类,但是也算是第一次使用PHP的框架.可以对于MVC有更深的理解. 前端界面 后台界面 登录后台的默认管理员是:2333333333,密 ...
- [内附完整源码和文档] 基于Android的手机音乐播放器的设计与实现
摘 要 随着Android系统和移动互联网的快速崛起,手机已经成为人们生活不可缺的一部分,在现代人的生活中,人们生活节奏的加快,生活压力越来越大,碎片化的时间越来越多,那么一个可以在碎片化的时间内调节 ...
- 投票源码程序_[内附完整源码和文档] 基于JSP实现的影视创作论坛系统
摘 要 随着时代的发展,互联网的出现,给传统影视行业带来的最大便利就是,方便了影视从业人员以及爱好者的交流和互动,而为用户提供一个书写影评,阅读影评以及回复影评的平台,以影评为载体来使用户感受影评.解 ...
- java 最少使用(lru)置换算法_[内附完整源码和文档] 基于C#的可视化虚拟存储器管理(LUR算法)...
一.目的要求 理解虚拟存储器概念,并掌握分页式存储管理地址转换和缺页中断的处理过程.用高级语言模拟请求分页式虚拟存储器的工作过程和页面置换算法LRU. 二.准备知识 2.1 分页式存储管理原理 在存储 ...
- [内附完整源码和文档] 基于JSP的网上订餐管理系统的设计与实现
摘 要 随着科学技术与经济的快速发展,网络信息技术也有了显著的提升与进步,当今的社会是一个集数字化,网络化,信息化的,并且是以网络为核心的现代化社会.伴随信息互联网的高速成长,使得互联网应用也走进家家 ...
- [内附完整源码和文档] 基于JSP网上招聘系统的设计与实现
摘 要 随着时代的发展,中国的互联网技术愈加成熟,已经有越来越多的社会群体开始学会使用互联网技术,整个社会正在朝着智能化.信息化的方向前进.有了互联网,用户便可以足不出户地利用互联网技术使得自己的生活 ...
- [内附完整源码和文档] 基于Android网络聊天室的设计与实现
前 言 随着我国科技水平的提高和移动通讯的飞速发展与普及,人们通过移动网络可做的事情越来越多,人们之间的沟通不在局限于面对面的对话,人们通过手机可以很方便的上网并通过手机上的APP进行聊天这样既节省话 ...
- [内附完整源码和文档] 基于Jsp的百货中心供应链管理系统
摘要 近年来,随着计算机技术的发展,以及信息化时代下企业对效率的需求,计算机技术与通信技术已经被越来越多地应用到各行各业中去.百货中心作为物流产业链中重要的一环,为了应对新兴消费方式的冲击,从供货到销 ...
最新文章
- LeetCode 6 Z字形变换
- 配置SpringCloud Config Client连上Config Server
- 成功解决ModuleNotFoundError: No module named ‘sklearn.lda‘
- My MPC系列·暴风影音 V5.00 RC3
- 多个服务器数据互通_3月21日部分服务器数据互通公告!
- Hbuilder常用快捷键功能.html
- JSP项目报错在build path里找不到javax.servlet.http.HttpServlet的解决方法
- Mysql编辑工具中使用(Navicat查询结果显示行号)
- zookeper安装_ZooKeeper的安装与部署
- static变量的作用(转)
- JavaWeb那些事儿(一)--为什么做java的web开发使用struts2,springMVC和spring这样的框架
- java学习日记-基础-列出2~100内的素数
- 【gflags】【gflags实践】【gflags的学习使用记录】
- 将货币转换为大写形式用c语言,C#:小写金额转换为大写
- 梯度下降,随机梯度下降,代码实现
- 纪念我的第一个程序员节
- 【编程实践】Python编程手册 《Python极简教程》
- cinta作业7:同态同构商群正规子群
- 2020.8.4课堂笔记(IO 缓冲流,对象流)
- Jmeter压力测试教程(上)