目录
前言
一、项目概述
1.项目功能结构图
2.项目功能说明
3.项目其他说明
二、开发过程中需要注意的问题
1.设计数据库表
2.设计模式的使用
3.Git工具
前言
????????我在之前写过一个java实现图书借阅管理系统的项目,还为此总结了一篇博客:Java实现图书借阅管理系统(IO流存储数据,附源码)不过那时存储数据是用IO流,但现实开发中基本上大多数都用数据库存储数据,所以这次我就和我的搭档一起将之前的图书借阅管理系统进行了重构。
一、项目概述
1.项目功能结构图
????????这次重构,我们不仅将存储方式改为数据库,而且在功能上也进行了扩展,使系统功能更加完整丰富。我们在原有功能的基础上主要增加了管理员功能模块。
2.项目功能说明
(1)登录模块:包括登录功能(根据两种身份(管理员或者操作员)进行登录),如果没有用户信息,则需要进入注册功能进行注册。(登录用户信息的读取和存储都应连通数据库表操作)还需要提供忘记密码,查看登录日志记录(日志可通过I/O流放在相对应的文件里),修改密码等基本功能。
(2)管理员模块:管理员主要包含四大基本功能:员工工作日志记录(记录了每个操作员的登录时间和各种操作信息,日志可通过I/O流放在相对应的文件里),图书借阅金额设定,对操作员信息进行管理(增删改查),图书逾期罚金总账单查询(该账单记录了所有预期的图书的逾期金额明细和最后图书馆所有书的逾期总金额数)。
(3)操作员模块:基本功能和之前的图书借阅管理系统差不多,不同之处为数据的存储方式(I/O文件—>数据库)
3.项目其他说明
- 注意命名(类名,包名,方法名,注释等),请严格遵循Java命名规则完成项目。
-
严格按照三层架构的方式去设计模块。 -
代码设计至少需要使用1种常用设计模式。(为了熟悉设计模式) -
该项目为团队合作,所以需要使用Git版本控制工具,协同开发。 -
将之前项目的所有存储在文件里的数据,全部放在数据库中,通过JDBC完成CRUD操作,需要个人设计好数据库表。
二、开发过程中需要注意的问题
????????开发过程中可能大家遇到的问题都不一样,我只讲几个重要的需要注意的地方。
1.设计数据库表
????????大家在设计数据库表时一定要考虑清楚,该设计哪些表、哪些字段、哪些约束等等,并且尽量遵守数据库三大范式,否则到后面会出现很多问题,到时再来修改就非常麻烦,且耽误时间。我们在本次项目开发中就遇到了因数据库表设计考虑不周而出现的问题。
? ? ? ? 罚金账单查询功能的历史账单会随着罚金设置的变动而变动,本来是不应该变的,应该用数据库存储下来。但由于设计数据库表时,我们没有设计历史罚金账单这个表,导致我们的历史罚金账单无法存储从而出错。
2.设计模式的使用
????????其实说实话,在这个项目当中使用设计模式有点鸡肋。但为了练习一下设计模式,对设计模式更加熟悉,我们还是用了,不过我们用的是最简单的单例模式。不要吐槽我们,实在是其他设计模式不知道怎么用啊 [欲哭无泪.jpg] 学习设计模式时感觉自己直接拿捏,做项目时才知道自己其实啥也不会。
? ? ? ? 设计模式在项目中的使用是非常灵活的,大家见仁见智,所以我就不过多赘述了。我在这里之所以提设计模式就是希望大家多在项目中积累设计模式经验,想要学懂设计模式,唯手熟尔!
3.Git工具
????????这个我不得不说在团队项目开发中非常重要!大家都知道在公司里,不可能一个人能完成整个项目的开发,都是项目团队合作开发。每个人写一部分功能,那么我们怎样将所有人的代码合起来并进行有效管理呢?就是靠Git等代码版本控制工具来实现。
? ? ? ? 关于git我在之前的博客中有介绍,感兴趣的小伙伴可以自行前往我的主页查看。在本项目中我想提醒大家,如果你是和搭档一起开发,那么一定要先讨论清楚各自负责的功能模块,一旦确定就不要随意更改。在开发过程中你只需要写好你自己的代码就行了,千万不要随意改动搭档的代码!哪怕你的搭档代码有问题也不要去随意改动,告诉他让他自己去改。不然你在使用git传代码时会异常崩溃(具体原因我就不多说了,大家自己去试试就知道了)。
ps:博主创作不易,小伙伴们,动动你们的小手指,给博主点个赞吧,谢谢!
|