Java 图书馆系统

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

1.1 功能调查



从调查资料中可以得出,图书馆系统大致分为查阅图书和“我的图书馆”这两个模块,“我的图书馆”中可以借阅和归还书籍,并展示我所借阅到的书籍

1.2 功能框架图

系统包含用户登录,图书馆书籍展示,图书馆书籍查找,进入“我的图书馆”展示我所借阅书籍界面,进行借书、还书两个操作这六个功能

2.类的设计

UML类图

3.类说明

Book类

Book类用来存放具体的书籍信息,以便生成条目供搜索

属性是书籍的相关信息,方法是获取书籍的相关信息和转成字符串格式化输出

MyBookDaoImpl类

MyBookDaoImpl类用来实现MyBookDao接口的具体实现方法

属性是ArrayList bookList表,用来存储我的书籍信息,方法设置了展示用户书架列表以及用户可进行的操作:借书、还书

ShelfDaoImpl类

ShelfDaoImpl类用来实现ShelfDao接口的具体实现方法

属性是ArrayList shelfList表,用来存储图书馆书籍信息,方法设置了展示图书馆书籍列表以及查阅书籍

Login类

用来实现用户的登录

属性是字符串数组username和password,用于存储用户的账号密码,方法为实现登录功能

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

logging存放登录的代码,library存放图书馆菜单和书籍属性的代码,dao存放系统的接口,daoimpl存放接口的具体实现方法

5.DAO模式

在这个系统中,我使用MyBookDao接口管理“我的图书馆”中的相关操作,用ShelfDao接口管理图书馆系统中的相关操作

使用DAO模式就可以在需求有变化时,只编写新的实现类而不需要改写现有的代码,减少对系统的影响,同时使用DAO模式使得系统分工明确,提高了代码的可复用性。

  • MyBookDao
public interface MyBookDao {
	public boolean borrowBook(Book e);//借书
	public boolean returnBook(Integer id);//还书
	public void displayAll();//显示书籍信息
}
  • ShelfDao
public interface ShelfDao {
	public void addBook(Book e);//添加书籍
	public void showBook();//书架展示
	public Book getItemById(Integer id);//根据id找书
}

6.数据持久化

采用文件进行持久化存储,将书籍信息存储在library.txt文件中,将用户名密码存储在login.txt文件中

7.阿里巴巴代码扫描规范

在用插件扫描代码的时候发现错的最多的是没有在只有一句语句的if语句上加大括号(不能偷懒55),然后是写方法的时候没有加上override

警告是没有完全按照驼峰法命名,有的方法首字母大写了,修改之后就可以了

修改之后

8.功能演示

用户登录后的界面

查阅书籍


我的图书馆

初始页面(没有借书记录)

初始页面(有借书记录)

借书操作

  • 控制借书数量不能超过三本:

还书操作

9.Git代码管理

Java图书馆系统

posted @ 2020-12-08 23:44  陈璧君  阅读(1123)  评论(2编辑  收藏  举报