面向对象设计大作业第二阶段:图书馆系统

1.功能调查与系统功能框架图

(1)前期调查






(2)系统功能框架图

2.类的设计


3.类说明

UserDaoImpl类

·实现UserDao接口
·登陆通过输入不同的账号和密码就可以验证是管理员还是用户

主要用来输出各个菜单

Book类

·主要包含书本的编号(id),名称(name),类别(category),数量(count),在图书馆中的位置(position)

UserOperateDaoImpl类

·实现了UserOperateDao接口
·使用List来存储从文本中读取的数据
·方法:
SearchPrecise():
用于精确查找图书,将文件中的图书名与用户输入的图书名相比较,相等则输出图书相关信息以及是否被借走。
SearchFuzzy():
用于模糊查找图书,将文件中的信息与用户输入的关键字相比较,含有关键字的图书就输出相关信息以及是否被借走
ShowBorrowHistory():
用一个文本来存储这个用户的借书记录,将其输出。
ShowRetuenHistory():
用一个文本来存储这个用户的还书记录,将其输出。
ShowPopularBooks():
用一个文本来放相关的热门图书,将其输出。

AdminOperateDaoImpl类

·实现了AdminOperateDao接口
·方法:
AddBooks():
管理员输入需要加入的图书编号,名称,类别,数量,位置。向文件中加入所有信息。
DelBooks():
管理员输入需要删除的图书编号,在文件中进行遍历,遍历到之后对他进行删除。

4.系统的包(package)的规划设计

5.特色

1.使用DAO模式

在登录,管理员操作,用户操作都使用了Dao接口;由于这三个部分都需要使用到文件数据的存储,就使用了DAO接口,我在对数据的修改时就直接改变DAO接口的方法就可以了,不用再对里面的代码进行大整改。

2.数据持久化

利用文件文本存储的方式,将数据存储到文本中就可以使数据存储持久化;
在图书馆系统中,用到了多个文本文件对数据进行存储

原文地址:https://www.cnblogs.com/lz0149/p/14095024.html