图书管理系统(重构版)

目录

项目介绍

项目需求

        项目结构图: 

         具体需求

                登录模块:

                管理员模块:

                操作员模块:

设计文档

         软件需求说明书:

        数据库设计说明书:

        概要设计说明书:

        接口设计说明书:

代码实现

        代码结构

                BLL:

                DAL:

                Entity:

                IDAL:

                UI:

 总结


项目介绍

        这次是对之前做的图书管理系统进行一个重构版的设计以及代码的编写。包括基本的借书还书,管理功能。当然一个人是很难完成的,还好有这个小伙伴一起设计,手动@South.return。

项目需求

        项目结构图: 

        

         具体需求

                登录模块:

                        包括登录功能(根据两种身份(管理员或者操作员)进行登录),如果没有用户信息,则需要进入注册功能进行注册。(登录用户信息的读取和存储都应连通数据库表操作)还需要提供忘记密码查看登录日志记录(日志可通过I/O流放在相对应的文件里修改密码等基本功能。

                管理员模块:

                        管理员主要包含四大基本功能:员工工作日志记录(记录了每个操作员的登录时间和各种操作信息,日志可通过I/O流放在相对应的文件里),图书借阅金额设定对操作员信息进行管理(增删改查)图书逾期罚金总账单查询该账单记录了所有预期的图书的逾期金额明细和最后图书馆所有书的逾期总金额数)。

                操作员模块:

                        读者信息管理:包括读者信息添加和读者信息查询与修改功能。用户登录成功之后,可以浏览所有读者的信息,也可以检索特定读者的信息;同时,可以对读者信息进行维护,包括增加、删除及修改。具体信息包括读者类型(读者的类型决定着他可以借到书的最大数量和最大归还天数)、读者姓名、出生日期、性别、电话、所在院系、注册日期等。(相关存储数据,通过数据库存储,JDBC进行操作)

                        图书信息管理:包括图书信息添加和图书信息查询与修改功能。用户登录成功之后,可以浏览所有图书信息和检索特定图书的信息;也可以对图书信息进行维护。包括添加图书、删除图书以及修改图书信息。具体信息包括:图书ISBN、图书名称、作者、出版社、出版日期、印刷次数、单价、图书类别等。(相关存储数据,通过数据库存储,JDBC进行操作)

                        图书借阅管理:包括图书借阅和图书归还功能。图书借阅功能,先输入读者的编号,然后输入要借阅的图书的信息,记录系统当前时间即借阅时间;图书归还功能,输入读者的编号,选择其名下已借阅的图书,判断当前日期即归还日期与借阅日期的差值是否超过了规定的期限,计算罚金,从而进行图书的归还操作。具体信息包括:借阅日期、归还日期、罚金。由于要计算罚金,故需要知道该读者的读者类型,根据类型判断其可借图书天数、可借图书数量等。(相关存储数据,通过数据库存储,JDBC进行操作)

                        基础信息维护:包括图书类别设置、读者类别设置及罚金设置。图书类别设置,可以对图书的类别进行增加、删除、修改和查询;读者类别设置可以对读者的类别进行增加、删除、修改和查询;罚金设置,可以指定超期一天的罚金标准。(相关存储数据,通过数据库存储,JDBC进行操作)

设计文档

        这次重构的主要目的就是写出设计文档,编写代码谁都会,但是写出一个好的文档却不是轻轻松松的事。写文档时需要对整个项目有个整体把握,还要各方各面都设计合理,了当。后面的代码都是根据这四个文档来编程,所以这四个文档极其极其重要!!!

        

         软件需求说明书:

                软件需求说明书是需求分析阶段的一个文档,是对软件目标及范围的求精和细化,深入描述软件的功能和性能以及软件的约束范围,使用户和软件开发者对该软件的初始规定有个大概了解,它是整个系统开发过程的依据,开发软件的目的就是为了用户使用满足用户的需求,所以在开发的每一个步骤都必须时刻清楚的明白用户的要求,从而研发出用户满意的高质量软件,同时有利于对项目的回溯和指导后续的开发和维护。

        数据库设计说明书:

                数据库设计说明书是为了让开发人员、维护人员了解数据库的格式、内容。以便于对后期数据库的维护、改进。

        概要设计说明书:

                概要设计说明的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、安全设计、数据结构设计和出错处理设计等,为程的详细设计提供基础。

        接口设计说明书:

                接口设计说明书介绍了此次编程所需用到的接口,以及接口的具体信息

        (由于文档信息太多,博客就不具体介绍了,想要四个文档具体内容直接私信我就行)

代码实现

        代码结构

                

                BLL:

                        

                        BLL包里面是每个功能的逻辑代码,里面的代码都是实现如何通过计算,转换等实现图书,读者的增删改查以及借书,还书等。

                DAL:

                        

                        DAL包里面是对于数据库的操作,里面设计到了JDBC连接数据库,主要作用就是使用SQL语言对数据库进行增删改查,来实现数据的永久存储以及更新。

                Entity:

                ​​​​​​​        

                        Entity包里面是所有的实体类,因为运用了数据库,所以涉及到了ORM思想(object relational mapping),即一个数据表对应一个java类,表中的一条记录对应java类的一个对象,表中的一个字段对应java类的一个属性。

                IDAL:

        ​​​​​​​        ​​​​​​​        

                        IDAL包中是所有要用的接口。

                UI:

        ​​​​​​​        ​​​​​​​        ​​​​​​​

                        UI包里面是代码涉及到的所有的界面展示,现在由于博主能力有限是控制台形式,正常来说应该是web形式来展示代码界面

        (由于代码量过大,博客不易展示,需要代码直接私信博主即可)

 总结

        相比于之前做的图书管理系统,这个图书管理系统的重点是在于编写代码之前的设计,也就是文档的设计。当我和小伙伴设计文档时发现,设计文档确实比编写代码有难度太多。设计文档考虑的东西也多,还要保证自己的设计思路合理,然后还需要将各个功能都能很好的连接起来。我现在算是知道为啥公司了设计文档的项目经理为啥工资要高亿点点了。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值