项目二之图书管理系统

目录

前言

 一、项目说明

二、项目功能结构

 三、读者信息管理

四、图书信息管理

五、图书借阅管理

六、基础信息维护

七、用户管理

八、代码展示

1、整个项目创的所有类和包

 2、读者类和读者类的操作

九、总结


前言

经过几个月的java基础学习我终于迎来了一个大项目,图书管理系统,这个项目可能学java的各位都会经历,也可能不会经历。接下来我就来说说我在做这个单独完成的大项目的时候我是怎么自己在跌跌撞撞中完成的。

项目二之图书管理系统

 

 一、项目说明

长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较烦琐。在借书时,读者首先将要借的书和借阅证交给工作人员,然后工作人员将每本书的信息卡片和读者的借阅证放在一个小格栏里,最后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息。太过于繁琐了!所以,我们需求设计一个图书管理系统来方便学生的借书和图书馆管理书籍。

二、项目功能结构

项目二之图书管理系统

 三、读者信息管理

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

实际操作:在我的实际操作当中,我先是将读者的实体类写出来,在根据实体类来写了相关的实现类并且在最后还给这个模块写了个操作界面方便我们进行调试并且可以在串联整个项目的时候直接调用。方便修改等等。在最开始的时候我在存注册日期等Data类型的数据时发生了一些问题,先我能将它直接存进去结果后面发现,当我读取数据的时候不能在将其转换为日期类型,系统会报错,后面我将日期类先转为了String类再存储,再取出来的时候相应的格式就能被转换成日期类型了。

四、图书信息管理

模块要求:包括图书信息添加和图书信息查询与修改功能。用户登录成功之后,可以浏览所有图书信息和检索特定图书的信息;也可以对图书信息进行维护。包括添加图书、删除图书以及修改图书信息。具体信息包括:图书ISBN、图书名称、作者、出版社、出版日期、印刷次数、单价、图书类别等。(相关存储数据可通过I/O流直接存在文件,可也直接在文件里读的数据)。

实际操作:在实际操作当中我也是和读者信息写得差不多的发现很多地方和写读者信息有很多的共通之处。在写这个模块的时候因为图书的类型标签很多,而我又是使用的list数组进行拼接来存储到文件中的,但是多了容易看错然后拼接出错,多拼接了不该拼接的东西导致最后读取出来的时候和存储进去的时候不一样,有个数据是重复的,还仔细看了好几遍才找到错在哪里。所以我觉得使用对象序列化更好,当标签多的时候就不用去考虑存储时候的顺序了,可以直接存,但是缺点是不能在文件之中查看是否有存储错误和修改之后有没有改变,只能通过对象反序列化来查看。

五、图书借阅管理

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

实际操作:在我的实际操作当中我自己觉得我都写完前面两个模块了,应该不会再遇到什么问题了,结果还是出现了一些问题。首先就是在罚金计算的时候归还日期和借书日期怎么可以得到我们想要的之间的天数,最开始也是没有一点想法,当在求助度娘之后找到了我们需要的方法解决了相关问题。

六、基础信息维护

模块要求:包括图书类别设置、读者类别设置及罚金设置。图书类别设置,可以对图书的类别进行增加、删除、修改和查询;读者类别设置可以对读者的类别进行增加、删除、修改和查询;罚金设置,可以指定超期一天的罚金标准。(相关存储数据可通过I/O流直接存在文件,可也直接在文件里读的数据)

实际操作:由于有了前面几个模块的设计经验,这个模块没有遇到什么特别的问题和前面的一些类的操作差不太多。

七、用户管理

模块要求:包括修改密码、用户添加和删除。修改密码,是指当前用户修改自己的密码;用户添加和删除,是对新增和去除系统用户时对用户信息的维护。(相关存储数据可通过I/O流直接存在文件,可也直接在文件里读的数据)

实际操作:这个模块的重点就是需要把密码和人匹配,其他和前面一样没有什么需要特别需要注意的。

八、代码展示

1、整个项目创的所有类和包

项目二之图书管理系统

 2、读者类和读者类的操作

读者类代码:

读者操作类的代码:

来源:码小春

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年10月2日
下一篇 2021年10月2日

相关推荐