系统设计图书管理系统.docx
《系统设计图书管理系统.docx》由会员分享,可在线阅读,更多相关《系统设计图书管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
系统设计图书管理系统
系统设计
实例
“图书管理系统”设计报告
1.引言
1.1目的
1.2范围
1.3定义
1.4参考文献
(略)
2.系統体系结构
本系统是一个基于B/S结构的图书管理系统,采用面向对象技术、数据库技术、分布式技术等先进技术开发的应用程序。
图书管理系统的体系结构如图5.1所示。
图5.1系统体系结构
我们将图书管理系统分成三层:
GUI层:
主要包括界面的定义。
Business层:
用来处理实体类的操作以及相应规则的实现。
DB层:
用来完成与数据库的交互,实现数据的存储与访问。
系统的部分组件图如图5.2.1,5.2.2和5.2.3所示。
图5.2.1Business包的组件图
图5.2.2GUI包中的部分组件图
图5.2.3GUI包中的部分组件图
图书管理系统的配置图如图5.3所示。
图5.3图书管理系统的配置图
3.建立设计的对象模型
系统的对象模型
候选类
描述
类名
注释
图书
在系统中,需要保存图书的基本信息,所以它应该是系统的对象。
Book
持久
读者
在系统中,需要保存读者的基本信息,所以它应该是系统的对象。
Reader
持久
借阅记录
在系统中,需要保存借书的记录,所以它应该是系统的对象。
Record
持久
账号
在系统中,账号是用来保存用户名密码,用于权限判定,所以它应该是系统的对象。
Account
持久
通过分析,我们得到的“图书管理系统”的实体对象说明层的类图,如图5.4。
图5.4实体对象说明层类图
注:
(1)Account类中的username就是对应Reader类中的readerId;
(2)Record类中中的bookId对应Book类中的bookId,readerId对应Reader类中的readerId。
“图书管理系统”的边界对象的部分类图,如图5.4.1和5.4.2。
图5.4.1边界对象类图
图5.4.2边界对象类图
3.1图书类描述
类名:
Book
类属性:
属性名
属性解释
数据类型
bookId
图书编号
String
bookName
图书书名
String
author
图书作者
String
publisher
图书出版社
String
price
图书单价
Double
abstracts
图书摘要
String
catelog
图书分类
String
status
图书状态
String
类方法:
方法名
方法功能
返回值类型
savaBook
添加图书信息
void
deleteBook
删除图书信息
void
updateBook
修改图书信息
void
getBook
根据id查找某本图书的详细信息
getBooks
查询图书信息
List
3.2读者类描述
类名:
Reader
类属性:
属性名
属性解释
数据类型
readerId
读者证号
String
readerName
读者姓名
String
address
读者联系地址
String
phone
读者电话号码
String
email
读者电子邮件
String
类方法:
方法名
方法功能
返回值类型
savaReader
添加读者信息
void
deleteReader
删除读者信息
void
updateReader
修改读者信息
void
getReader
根据id查找某个读者的详细信息
getReaders
查询读者信息
List
3.3借阅记录类描述
类名:
Record
类属性:
属性名
属性解释
数据类型
bookId
图书编号
String
readerId
读者证号
String
borrowDate
借阅日期
Date
类方法:
方法名
方法功能
返回值类型
savaRecord
添加借书记录
void
deleteRecord
删除借书记录
void
getRecords
查询借书记录
List
isExpired
是否过期
boolean
borrowBook
借书
void
returnBook
还书
void
3.4帐号类描述
类名:
Account
类属性:
属性名
属性解释
数据类型
username
用户名
String
password
密码
String
type
用户类型
String
类方法:
方法名
方法功能
返回值类型
savaAccount
添加帐号
void
deleteAccount
删除帐号
void
updateAccount
修改帐号
void
isAccount
判断是否是合法用户
boolean
getAccounts
查询帐号信息
List
4.提供交互界面的
4.1对图书信息操作的界面类
Book_save.jsp添加图书页面;
Book_list.jsp查询图书记录的列表显示;
Book_detail.jsp显示图书详细信息;
Book_update.jsp图书信息更新页面;
Book_query.jsp图书信息查询页面
4.2对读者信息操作的界面类
Reader_save.jsp添加读者页面;
Reader_list.jsp多条读者记录的列表显示;
Reader_detail.jsp显示读者详细信息;
Reader_update.jsp读者信息更新页面;
Reader_query.jsp读者信息查询页面
4.3对借阅记录信息操作的界面类
Record_save.jsp添加借阅记录页面;
Record_list.jsp查询借阅记录结果的列表显示;
Record_query.jsp借阅记录信息查询页面
Record_delete.jsp还书页面
4.4对帐号信息操作的界面类
Account_save.jsp添加帐号页面;
Account_list.jsp查询帐号记录结果的列表显示;
Account_update.jsp帐号信息更新页面;
Account_query.jsp帐号信息查询页面
5建立动态模型
由于借书和还书的过程是本系统中较重要而且较复杂的流程,因此我们画出它们的时序图。
5.1借书
借书时序图参见“系统分析-图书管理系统”中的图4.2。
5.2还书
还书时序图参见“系统分析-图书管理系统”中的图4.3。
5.3状态图
某些类可以由UML状态图来显示对象的不同状态,以及改变对象状态的事件。
图书管理系统中有状态图的类有:
Book和Account。
类Book的状态图参见“系统分析-图书管理系统”中的图4.4。
类Account的状态图如图5.5。
图5.5Account的状态图
5.4活动图
在图书管理系统中,有明确活动的类有:
读者(Reader)和图书管理员(Librarian)。
读者借书的活动图参见“系统分析-图书管理系统”中的图4.5。
图书管理员的活动图如图5.6。
图5.6图书管理员的活动图
6数据库设计
6.1图书表:
表名:
book
字段名
字段含义
数据类型
是否允许空
是否主键
id
图书的自然主键
int
bookId
图书编号
varchar(20)
bookName
图书书名
varchar(20)
author
图书作者
varchar(20)
publisher
图书出版社
varchar(50)
price
图书单价
double
abstracts
图书摘要
varchar(500)
catelog
图书分类
varchar(20)
status
图书状态
char
(1)
6.2读者表
表名:
reader
属性名
属性解释
数据类型
是否允许空
是否主键
id
读者的自然主键
int
readerId
读者证号
varchar(20)
readerName
读者姓名
varchar(20)
address
读者联系地址
varchar(100)
phone
读者电话号码
varchar(20)
email
读者电子邮件
varchar(40)
6.3借阅记录表
表名:
record
属性名
属性解释
数据类型
是否允许空
是否主键
id
借阅记录的自然主键
int
bookId
图书编号
varchar(20)
readerId
读者证号
varchar(20)
borrowDate
借阅日期
Date
6.4帐号表
表名:
account
属性名
属性解释
数据类型
是否允许空
是否主键
id
帐号的自然主键
int
username
用户名
varchar(20)
password
密码
varchar(20)
type
用户类型
char
(1)
7.用户界面设计
采用图形用户界面。
7.1系统登陆界面
打开浏览器输入:
http:
//localhost:
8080/lms/logon.jsp
出现如下登录界面(如图5.7):
图5.7登陆页面
输入正确的用户名和密码,选择“图书管理员”,跳转到操作主页面(如图5.8)
图5.8主页面
7.2图书信息界面
1.添加图书
选择“图书维护”菜单中的“添加图书”菜单,出现如下的添加页面(如图5.9):
图5.9输入图书信息页面
输入信息后,点击“添加”;
2.查询图书
选择“图书维护”菜单中的“查询图书”菜单,出现如下的添加页面(如图5.10):
图5.10输入图书信息查询条件页面
输入查询条件后,点击“查询”按钮,出现查询结果,如下图(图5.11所示:
图5.11图书信息查询结果列表
3.删除图书
在图5.11中选择要删除的记录,点击删除按钮,进行删除;
4.修改图书
在图5.11中选择要修改的图书记录,点击更新按钮,出现更新页面,如下图所示(图5.12):
图5.12图书更新页面
在更新页面中,编辑要修改的信息,点击保存按钮。
7.3读者信息界面
(大致与图书信息的操作类似,故省略)
7.4图书流通操作
1.借书
选择“图书流通”菜单中的“借书”菜单,出现如下的添加页面:
图5.13借书页面
输入借阅信息后,点击借书按钮;
2.还书
选择“图书流通”菜单中的“还书”菜单,出现如下的还书页面(如图5.14):
图5.14还书页面
输入借阅信息后,点击还书按钮;