《图书管理系统—解决方案(共9页).doc》由会员分享,可在线阅读,更多相关《图书管理系统—解决方案(共9页).doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上图书管理系统解决方案一、综述1.1 图书管理系统开发背景在中学时发现这些图书室都藏书达六、七万余册,但其现行图书管理工作都是采用传统的手工管理,经过对其图书管理工作中的图书信息、读者管理及借阅管理工作做全面调查研究,其现行手工流程具体分析如下:图书登记:对上级分配、学校购入和社会捐赠的图书进行图书信息登记;读者登记:图书管理员根据学校档案室提供的教师花名册和学生花名册进行读者登记,然后填发借书证,学生毕业和教师调出时将其借书证注销。借阅管理:读者特别是学生读者持借书证到图书室借阅图书,图书管理员将借阅日期填写在书籍卡片上,将卡片夹在借书证中间,存放在图书室,学生看完后
2、,送还所借书籍,收回借书证或另借其它书籍。这种传统人工的管理方式效率低、保密性差, 一方面导致教师、学生对学校图书室藏书情况不了解,图书室究竟有哪些图书也不知道;另一方面图书管理员对图书管理工作力不从心,因为时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,耗费劳动力大,难于避免错误的产生,更容易造成图书的外流。然而现在,计算机的价格已经十分低廉,性能却有了长足的进步。在初级中学都装备有一定数量的电脑,中学教师都掌握了一定的计算机知识,它已经被学校应用于学校工作的许多领域。计算机之所以在中小学发挥如此重要的作用的原因主要有以下几个方面:首先,计算机可以代替人工进行许多
3、繁杂的劳动;其次,计算机可以为农村初级中学节省许多资源;第三,计算机可以大大的提高教职工的工作效率;第四,计算机可以使敏感文档更加安全,等等。然而为了更好的应用计算机,就针对目前中小学的要求,历时三年,精心研制了远制易航图书管理系统,目前广东省大约有百分之六十的中小学都一直在使用开发的。利用来管理图书,其好处归纳起来,大约有以下几点:1 可以存储学校图书室的图书信息、读者信息和借阅信息,安全、高效;2 只需一名图书管理员即可操作系统,节省大量人力;3 可以迅速查到所需信息,图书管理系统可以为学校教师和学生提供充足的信息和快捷的查询手段,让教师和学生能够及时查询图书信息,更好地为读者服务。4 可
4、以预借想借的书本。5 并能做到管籍互借,这样能更好地实现图书的流通,无形中增加了图书的资源。6更好地主要实现纸质图书的采购、编目、流通业务管理。因此开发的,以适应现行图书管理工作的要求,提高工作效率。二、系统分析设计2.1 系统功能模块设计一、管理员 客户端功能名称备注1、登陆2、查询查询借书记录,查询图书信息3、新增图书增加缺少书籍和受好评书籍4、修改图书信息书籍信息输入错误时进行修改5、新增借书人员6、删除借书人员二、借书人员 客户端功能名称备注1、登陆2、查询查询个人借书记录,查询图书信息,查询节约排行榜3、评论对书籍内容进行评价三、借书登记员功能名称备注1、登陆2、查询查询借书记录,查
5、询图书信息,查询节约排行榜3、新增借书记录4、学生还书5、图书遗失三、数据分析与设计 3.1 数据库分析3.1.1 建立数据库与表建立图书管理系统并命名为BookSystemDB,根据项目需求分析,在数据库中建5张表,包括有:图书管理人员表 (bookMgrInfo)图书借阅人员表 (borrowerInfo)图书信息表 (bookInfo)图书借阅记录表 (borrowNotesInfo)图书评论表 (critiqueInfo)3.1.2 封装存储过程和视图3.2 数据库设计图书管理人员表 (bookMgrInfo)字段名名称类型备注Id人员编号Int主键(primary key) Name
6、人员姓名Varchar(10)非空Password密码Char(16)非空,密码16位Status身份Varchar(10)非空图书借阅人员表 (borrowerInfo)字段名名称类型备注E_Id人员编号Int主键(primary key) E_Name人员姓名Varchar(10)非空E_Password密码Char(16)非空,密码16位E_Status身份Varchar(10)非空E_Sex性别Varchar(2)非空E_Age年龄Int非空E_Department系别Varchar(20)非空E_Picture照片Image非空E_Mark备注Varchar(100)图书信息表 (b
7、ookInfo)字段名名称类型备注B_id图书编号Int主键(primary key) B_name书名Varchar(50)非空B_type类别varChar(20)非空B_author作者Varchar(10)非空B_bookTime出版日期Time非空B_price定价Money非空B_count总数量Int非空B_setCount已借数量Int非空B_image图书封面ImageB_mark备注Text图书借阅记录表 (borrowNotesInfo)字段名名称类型备注N_id借阅记录编号Int主键(primary key) B_id图书编号int外键连接图书信息表E_id借阅人员编号
8、int外键连接图书借阅人员表 B_borrowTime借阅日期Time非空N_borrowStatus借阅状态Varvhar(10)状态分为:未还,已还,超时图书评论表 (critiqueInfo)字段名名称类型备注C_id评论编号Int主键(primary key) B_id图书编号Int外键,连接图书信息表Br_id借书人编号Int外键,连接借书人信息表C_critique评论Text四、系统功能详细分析41.1系统参与人员1.管理员2.借书登记员3.学生4.1.2 功能说明1 登陆获取用户输入的用户名和密码,以及身份,判断用户名和密码是否匹配,如果匹配,则验证身份,通过不同的身份进入不同
9、的界面查询需要的存储过程:usp_Login;2管理员客户端a查询功能可查询某段时间的内的借书与还书记录需要借书记录表的视图,视图名:view_borrowNotes可通过书籍的书名,作者,类别查询书籍查询一段时间内的排行榜需要图书信息表的视图,视图名:view_bookb新增功能增加新书信息(书籍编号,书名,作者,类别,价格,出版日期,总数量,已借数量,备注)存储过程名:usp_addBook增加借阅人员信息(编号,姓名,性别,身份,系别,年龄,密码,照片,备注)存储过程名:usp_addPersonc修改功能可通过书名,编号修改新书信息(作者,类别,价格,出版日期,总数量,已借数量,备注)
10、通过编号修改借阅人员信息(姓名,性别,身份,系别,年龄,密码,照片,备注)存储过程名:usp_upPersond删除功能通过编号删除借阅人员信息(姓名,性别,身份,系别,年龄,密码,照片,备注)存数过程名:usp_deletePerson3借阅人员客户端a查询功能可通过书籍的书名,作者,类别查询书籍查询一段时间内的排行榜可以查询个人的借还书记录需要图书信息表的视图,视图名:view_bookb评论功能 可以发表对某一本书的评论 存储过程名:usp_addC4 借书登记员客户端 a查询功能 可以查询全部借书记录,可按学号、时间、图书编号等类型查询 b新增借书记录获取用户填入的借书信息,封装指定对
11、象,执行添加借书记录的存储过程,返回添加结果。存储过程名:usp_addBorrowNotes c学生还书 输入指定学号和图书编号,找到指定的借书记录,将其中的借书状态该为“已还”。还书时,查询其借阅时间,判断是否超时,超时时,需要支付一定罚金。修改图书已借数量存储过程名:usp_upBorrowNotes d图书遗失 输入指定学号和图书编号,找到指定的借书记录,将借书状态该为“遗失”,并修改图书的总数量。 存储过程名:usp_deleteBook4.2.1所需实体类和工具类实体类:1. 借书人员类:Borrower2. 图书信息类:Book3. 借书记录类:Borrownotes4. 评论类
12、:Critique工具类:1. 逻辑层中:a) 借书人员表所用的工具类:Bll_borroweri. 添加借书人员信息的方法:bool addBorrower(Borrower b)ii. 修改借书人员信息的方法:bool upBorrower(Borrower b)iii. 删除借书人员信息的方法:bool deleteBorrower(Borrower b)iv. 查询借书人员信息的方法:DataTable selectBook(Book b)1. 按人员编号查询2. 按人员姓名查询3. 按人员身份查询4. 按人员系别查询5. 查询全部b) 图书信息表所用的工具类:Bll_booki. 添
13、加图书信息的方法:bool addBook(Book book)ii. 修改图书信息的方法:bool upBorrower(Book book)iii. 查询图书信息的方法:DataTable selectBook(Book b)1. 按图书名称查询2. 按图书作者查询3. 按图书类别查询4. 查看好书排行榜查询5. 查询全部c) 借书记录表所用的工具类:Bll_borrownotesi. 添加借书记录的方法:bool addBorrownotes(Borrownotes b)ii. 学生还书的方法:bool upBorrownotes(int bookId,int borrowerId)ii
14、i. 查询借书记录的方法DataTable selectBorrownotes(Borrownotes b)1. 按借书人编号查询2. 按图书编号查询3. 按借书状态查询4. 查询全部iv. 按不同时间段查询借书记录DataTable selectTimeBorrownotes (String s),分别传:1“本周”2“本月”3“本日”等、d) 评论表所用的工具类:Bll_Critiquei. 添加评论信息的方法bool addCritique(Critique c)ii. 查询评论DataTable selectCritique (Critique c)1. 按图书编号查询2. 按借书人编
15、号查询2. 数据访问层a) 借书人员表所用的工具类:BorrowerDALi. 添加借书人员信息的方法:bool addBorrower(Borrower b)1. 所需存储过程名:usp_addBorrower ii. 修改借书人员信息的方法:bool upBorrower(Borrower b)1. 所需存储过程名:usp_upBorroweriii. 删除借书人员信息的方法:bool deleteBorrower(Borrower b)1. 所需存储过程名:usp_deleteBorroweriv. 查询借书人员信息的方法:DataTable selectBorrower(Book b
16、,int i)a) 所需视图名:view_selectBorrower2. 按人员编号查询3. 按人员姓名查询4. 按人员身份查询5. 按人员系别查询6. 查询全部b) 图书信息表所用的工具类:BookDALi. 添加图书信息的方法:bool addBook(Book book)1. 所需存储过程名:usp_addBookii. 修改图书信息的方法:bool upBook(Book book)1. 所需存储过程名:usp_upBookiii. 查询图书信息的方法:DataTable selectBook(Book b,int i)a) 所需视图名:view_selectBook2. 按图书名称
17、查询3. 按图书作者查询4. 按图书类别查询5. 查看好书排行榜查询6. 查询全部c) 借书记录表所用的工具类:BorrownotesDALi. 添加借书记录的方法:bool addBorrownotes(Borrownotes b)1. 所需存储过程名:usp_addBorrownotesii. 学生还书的方法:bool upBorrownotes(int bookId,int borrowerId)1. 所需存储过程名:usp_upBorrownotesiii. 查询借书记录的方法DataTable selectBorrownotes(Borrownotes b,int i)a) 所需存储
18、过程名:view_selectBorrownotes2. 按借书人编号查询3. 按图书编号查询4. 按借书状态查询5. 查询全部iv. 按不同时间段查询借书记录DataTable selectTimeBorrownotes (int,i)根据I值判断是1本周,2本月,3本日所需视图名:view_selectTimeBorrownotesd) 评论表所用的工具类:CritiqueDALi. 添加评论信息的方法bool addCritique(Critique c)1. 所需存储过程名:usp_addCritiqueii. 查询评论DataTable selectCritique (Critique c,int i)a) 所需视图名:view_selectCritique 2. 按图书编号查询3. 按借书人编号查询e) DBhelp类五、结果与讨论专心-专注-专业