程序逸的Java项目之旅-图书管理系统之环境的搭建

1.前言

  • 上篇博客我们介绍了一下环境的搭建,我相信很多小伙伴这点应该问题不大,可能就是idea破解和mysql数据库和redis数据库的安装吧,我其实也看过网上很多博客啥的,也找过一些项目,但是很多数据库表直接就是给你一个xxx.sql文件直接去Navicat去执行sql文件就好了,然后里面一打开就会发现很多表,也不说是干啥的,所以我们从专业的角度来说明一下,对于一个系统来说,数据库是最重要的,为什么呢?我们做的系统其实就是为了处理各种各样的数据,最终这些数据会存储到mysql中,当然也会有存储到redsi中了,但数据库表的设计是真的很重要,而且也很难,并不是想象中的简单的,但如果不是很复杂的项目的话,表的设计我们也还是可以来书写的,接下来我们就来设计数据库表吧。

2.需求分析

  • 我们拿到这个图书管理系统,就要开始分析这个项目具体有哪些功能呢?我们有哪些角色呢?这就是我们接下来要分析的,所以我们可以使用思维导图来帮助我们实现。
  • 【角色分析】:图书管理肯定要有管理员的,但应该还有有用户,毕竟书在图书馆,没人来借书不凉了吗,所以这个系统要给管理员和用户使用,所以我们就可以想想这两个角色都可以有哪些功能呢?

  • 【功能分析概述】:上述两张图片是我自己暂时想到的功能,实际可能是别人提供需求给我们,但目前来说我们只能自己先模拟需求了,这些功能应该是最基本的需求了吧,最起码如果用在图书馆之类的,把一本书借出去,然后再归还问题应该不大,但实际可能会复杂很多,我们目前先不追求。

3.数据库表的设计

  • 【概述】不知道大家有没有画过E-R图,通过E-R图我们可以实现数据库表的设计,也更加清晰的认识项目中涉及的角色关系等等。所以接下来我们开始分析需要建哪些表,怎么建的问题。
  • 【管理员表 (t_admin)】:这个表不用多说,用来存储管理员信息的表,这里涉及到一个知识,就是阿里巴巴的代码规范,就是一个表至少包含三个字段:id主键,crate_time创建时间,update_time修改时间。所以我们的表中都要有这三个字段。剩下的就是一些基本信息字段,这里呢像什么年龄,地址等信息有兴趣的小伙伴可以继续扩充,毕竟就是多了一些信息,我这里就不写的太冗余了。
字段名 含义
id 主键
ADMIN_NAME 管理员账户名
ADMIN_REALNAME 管理员真实姓名
ADMIN_PWD 密码
ADMIN_IMGURL 管理员头像路径
CREATE_TIME 创建时间
UPDATE_TIME 修改时间
  • 【用户信息表(t_user)】:用户信息表也是一些用户的个人信息字段,可以对我的继续补充,我这里就简单找一些主要的信息进行书写了。
字段名 含义
id 主键
USER_NAME 用户名
USER_REALNAME 用户真实姓名
USER_PWD 用户密码
USER_IMGURL 用户头像
USER_PHONE 用户联系方式
STATE 0是注册,1是注销
CREATE_TIME 创建时间
UPDATE_TIME 修改时间
  • 【图书类别表 (t_booktype)】:图书千千万,但也是有分类的,只有通过分类才方便我们快速查询书籍信息等,所以需要有一个分类表来帮助我们进行书籍种类的扩充。
字段名 含义
id 主键
TYPE_NMAE 类别名称
CREATE_TIME 创建时间
UPDATE_TIME 修改时间
  • 【图书表 (t_book)】:图书的信息应该不难,书籍名称,作者,价格,等等,还有库存数量等。
字段名 含义
id 主键
BOOK_NAME 图书名称
BOOK_AUTHOR 图书作者
BOOK_COUNT 图书数量
BOOK_URL 图书图片地址
CREATE_TIME 创建时间
UPDATE_TIME 修改时间
  • 【图书借阅表 (t_bookborrowing)】:用户需要借阅图书,那么我们就要想借阅图书的信息有哪些呢?首先id,创建时间,修改时间要有,其次就是用户的id,和书籍的id,通过一个表将图书信息和用户信息进行关联,这样就可以顺藤摸瓜了,还有借阅状态,因为我们可以预约借书,当我们真的去图书馆拿到书时,就是真的借书了。还有就是归还时间,我们的借阅书籍表还要设置一个统一的借阅时间,长于7天的就属于未归还了。
字段 含义
id 编号
BOOK_ID 书籍id
USER_ID 用户id
STATE 状态(0预约中,1借阅中,2正常归还,3未归还,4延迟归还)
CREATE_TIME 创建时间
UPDATE_TIME 修改时间

今天第一天暂时写这么多,后续我将数据库完善

程序逸的Java项目之旅-图书管理系统之数据库设计(1)相关推荐

  1. 程序逸的Java项目之旅-图书管理系统之数据库设计(2-完)

    紧接上篇博客>>>>>>程序逸的Java项目之旅-图书管理系统之数据库设计(1) 4.数据库表的创建 对于数据库表,我们可以通过cmd窗口进行创建,但那种方法有点麻 ...

  2. 程序逸的Java项目之旅-图书管理系统之验证码和用户数据的后台获取(1)

    通过上篇博客>>>>>程序逸的Java项目之旅-图书管理系统之后端接口的快速实现,我们就可以快速搭建出基础的项目代码了,今天我们就先来实现一个验证码和后台获取管理员的账号 ...

  3. 程序逸的Java项目之旅-图书管理系统之环境的搭建

    其实自己一直没有真正的梳理过一个项目,无论这个项目是简单还是困难,所以我希望通过这个项目帮助我学习以及分享自己的心得给大家,谢谢. 1.前言 这个项目我也是从零开始写,并且更新的速度要看我写的速度,期 ...

  4. 程序逸的Java项目之旅-图书管理系统之项目搭建

    前两篇博客将数据库表简单设计了一下,接下来我们就可以先搭建项目基础的骨架了.很多高校依旧使用eclipse/myeclipse来作为编译器,不是说这个编译器不好,其实Ieda的功能它都有,但用起来就是 ...

  5. 程序逸的Java项目之旅-图书管理系统之后端接口的快速实现

    我们可以借助Mybatis-plus来快速生成我们的DAO,Mapper,和service层,因为通过这些插件可以生成最基础的增删改查语句,但如果是更复杂的语句,我们可以自己再去xml中手写也是可以的 ...

  6. Java程序员的福音:Java项目教学之图书管理系统(含源代码)

    1 图书管理系统项目演示 图书管理系统分析: 定义Book类 完成主界面和选择 完成查询所有图书 完成添加图书 完成删除图书 完成修改图书 使用Debug追踪调试 2 图书管理系统之标准Book类 我 ...

  7. Java项目:SpringBoot图书管理系统

    作者主页:夜未央5788 简介:Java领域优质创作者.Java项目.学习资料.技术互助 文末获取源码 项目介绍 本系统分为管理员与普通用户两种角色: 管理员角色包含以下功能: 借书管理,图书信息管理 ...

  8. 图书管理系统的数据库设计

    一.实验目的 选用一种DBMS作为设计平台,理解并应用课程中关于数据库设计的相关理论,能按照数据库设计步骤完成完整的数据库设计,包括需求分析.概念设计.逻辑设计.物理设计和实施.同时能够正确应用各个阶 ...

  9. 基于JAVA的疫情学生宿舍管理系统【数据库设计、论文、源码、开题报告】

    主要使用技术 Servlet+layui+JSP+CSS+JS+Mysql 数据库脚本 /* SQLyog Ultimate v13.1.1 (64 bit) MySQL - 5.5.40 : Dat ...

最新文章

  1. android多功能计算器 源码,Android计算器源码
  2. linux+date+命令+作业,Linux date命令的使用
  3. mysql怎么创建文字表_myMySQL数据库 如何将中文转拼音 MySQL数据库使用教程
  4. powershell实现设置程序相关性脚本
  5. Apache JMeter 压试 HTTP接口
  6. MFC模态与非模态对话框的创建与销毁
  7. 「开源·共创·照亮」TDengine开源两周年暨灯塔计划发布会邀你一起闪耀
  8. python异常(概念、捕获、传递、抛出)
  9. 通过Stratus 服务器在Flash Player中使用RTMFP 开发P2P应用
  10. 如何在H264数据中获取PTS?
  11. 零基础能学平涂插画么?
  12. linux7怎么进桌面,CentOs7无法进入桌面系统怎么办?
  13. 交并比 (IoU), mAP (mean Average Precision), 非极大值抑制 (NMS, Soft NMS, Softer NMS, IoU-Net)
  14. SpringBoot 配置文件加密的两种方式
  15. 红队信息收集自动化工具-水泽(ShuiZe)
  16. Python对微信好友进行简单统计分析
  17. 自主设计的滑移转向机器人同步带传动stm32f103的can伺服电机控制
  18. Apache+Tomcat 动静分离
  19. 技术总监“阿朱”是何许人也
  20. 跳槽涨薪技术之python+pytest接口自动化(6)-请求参数格式的确定

热门文章

  1. On teaching mathematics--Arnold
  2. 表单验证设计的用户体验基本原则
  3. 【技术贴】解决相册thumbnails文件过大 小米缩略图缓存根除办法
  4. AAAI 2022 | MAVEx—基于知识的视觉问答方法
  5. 我对价值投资的思考(二)
  6. Android手机电池耐用吗,八款超长待机的智能手机 大容量电池十分耐用
  7. WINDOWS系统“资源管理器”进程选项关闭之后的解决方法
  8. 如何判断建设用地是否符合土地利用总体规划?
  9. 如何在谷歌学术下载论文
  10. 猪猪女孩有多蠢,猫爪杯就有多火