(论文)图书管理系统论文最新优秀毕业论文资料搜集呕血奉献_第1页
(论文)图书管理系统论文最新优秀毕业论文资料搜集呕血奉献_第2页
(论文)图书管理系统论文最新优秀毕业论文资料搜集呕血奉献_第3页
(论文)图书管理系统论文最新优秀毕业论文资料搜集呕血奉献_第4页
(论文)图书管理系统论文最新优秀毕业论文资料搜集呕血奉献_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕毕 业业 论论 文文 论 文 题目图书管理系统 院(系)名称计算机与信息工程学院 专 业 名称计算机信息管理 班 级计算机信息管理 学 生 姓名 学 号 指导教师姓名 - 1 - 目目 录录 内容摘要:1 关键词:1 ABSTRACT:.1 KEYWORDS:.1 1.引言.2 1.1 系统开发意义2 1.2 系统开发目的2 1.3 现状研究2 2.系统模型与结构.4 2.1 系统功能需求分析4 2.2 功能模块设计4 2.3 数据库需求分析5 2.4 数据库概念结构设计5 2.5 数据库逻辑结构设计7 2.6 系统流程及功能模块划分10 3.系统详细设计.12 3.1 登录模块12 3.2 管理员功能设计14 3.3 操作员功能设计16 3.4 读者功能设计18 4.性能测试与分析.20 4.1 性能测试20 4.2 性能分析20 参考文献:21 致谢22 - 1 - 内容摘要:内容摘要:二十一世纪是信息的世纪,随着社会经济的发展,社会信息化程度 也越来越高,学校作为教育与科技的先行者,优秀的技术往往会被所率先学校采用。 优秀的学校管理决策者一定会毫不犹豫地选择或者自主开发一个适合本校校情的图 书管理系统。 图书管理系统实现了分角色登录功能,读者只能进行查询。图书操作员能实现 图书借阅、图书归还、新书入库等功能,系统管理员对系统用户进行添加和维护。 ASP.NET 是目前最流行的 Web 开发技术之一,它基于.NET 环境开发,具体的开发 平台使用的是 Visual Studio 2005,在数据库方面使用的是 Access 2003。本系统开发 的总体任务是实现与图书相关的各种信息的系统化,规范化和自动化。 关键词:关键词:图书管理系统 数据库设计 管理信息系统VisualStudio2005 Access 2003 Abstract:The twenty-first century is the century of information, with the social and economic development, social information is also growing high school education and technology as forerunner, outstanding technical tend to be the first to schools. Good school management decision-makers would not have hesitated to choose or develop a self-love for our school library management system. Library management system to achieve the sub-login feature role, the reader can only query. Books to borrow books to achieve the operator, book return, book storage and other functions, the system administrator to add users on the system and maintenance.ASP.NET is the most popular Web development technology, one of which is based on. NET development environment, the specific development platform using Visual Studio 2005, the use of the database is Access 2003. The overall task of the system development is to achieve a variety of information and books related to the systematic, standardized and automated. Keywords:Book Management SystemAccess 2003 Visual Studio 2005 - 2 - 1.引言引言 1.1 系统开发意义系统开发意义 随着我国的经济的发展,大量的人才是社会发展的强大推动力,正因为如此 政府也越来越重视教育。随着一系列措施的实施,我国的教育现状大为改观,学生 的入学率大大提高,同时也有很多的学校建立了起来。为了给同学们增加课外知识, 大部分的学校都考虑到要建立图书馆。从但是手工化的管理方式,显然成了学校正 常工作中为了使学校的图书馆更好的服务与广大的老师和学生,提升对图书管理的 信息化,编写了本图书管理系统。 1.2 系统开发目的系统开发目的 信息系统是对信息进行管理的系统,而要对信息进行管理就必须先对数据进行 存储,所以数据库在任何信息管理系统中都占有非常重要的地位,所以数据库设计 的好坏直接影响着该信息系统的性能,效率会大打折扣。管理信息系统的最大特点 就是从数据库中提取数据,将这些数据信息显示给用户,用户通过对这些数据的分 析,来达到对信息的掌握。当然有时系统还会提供一些常用分析模型,来为用户提 供一些智能分析,有点像专家支持系统的管理信息系统。 作为当今 Web 应用程序的兴起,已经越来越受到用户和软件开发人员青睐。早 期的 ASP 技术是这种软件的开发方式成为可能,随后微软公司推出了一种更为先进 的.NET Framework 开发平台,基于此框架的 ASP.NET 使 Web 开发变得更加方便与 快捷。C#是 Microsoft.NET 的核心编程语言,能够最大限度的发挥 Visual Studio.NET 平台的威力,使用户能够在该平台上快速开发各种类型的应用程序。 正是由于以上这些工具的优点所以本系统的开发就使用.NET 平台进行开发,具 体的工具是 Visual Studio 2005。数据库采用的是 Access2003 因为它界面友好,容易 操作并且支持 ODBC。 本系统开发总体任务目的是:使用 Access 2003 创建数据库,实现借书相关信 息的系统化、规范化、自动化。为图书馆的工作人员减少工作强度,提高工作效率, 为学校的广大的师生服务。 1.3现状研究现状研究 - 3 - 随着社会的快速发展,技术的进步,信息爆炸的时代来临了,而如何对庞大的 数据进行高效的管理,是开发信息系统时必须要考虑的一个问题。作为图书馆的辅 助管理工具,主要是围绕图书的管理来进行。因为图书馆里有大量的书籍,而这些 书籍有一个庞大的分类,并且有很多人借书,每个人不只借一本书,其中还包括丢 失的书的情况,或者超过借书期限罚款的管理等等。因此开发一套图书馆图书管理 系统就显得尤为重要,有了这一套系统就可以实现上述的种种优点。 - 4 - 2.系统模型与结构系统模型与结构 2.1 系统功能需求分析系统功能需求分析 系统功能需求分析,是确定系统功能简单和最有效的方法。通过这种方法,实 现图书馆对图书的管理。首先是对角色进行划分,先介绍图书操作员的功能。因为 这是一个图书管理系统,所以首先要实现对书籍信息的管理,因此在系统中有一个 图书信息管理功能模块来实现对图书信息的管理。然后是用户借书,当读者借书的 时候,涉及两个角色,一个是读者,另一个是图书操作员。如何实现讲书借给读者 呢?这就需要借阅管理模块,图书操作员通过图书借阅管理模块来完成借书的功能。 当读者还书时需要首先判断该书是否超期,不超期时就调用图书归还管理模块管理, 来实现读者还书的功能。如果超期,同样首先调用图书归还模块实现还书,然后再 调用调用超期罚款功能模块来实现对还书超期的情况的处理。当图书被借阅和归还 时会产生图书数量的变化,这就需要对图书库存信息的管理,因此系统中存在图书 库存信息管理模块来说实现此功能。 然后是系统管理员的功能,系统管理员必须具备添加读者用户和图书操作员用 户的功能,所以在系统中设计了用户管理功能模块来实现这一功能。当然还需要对 书籍的类别进行管理,类别管理模块就是为此而设计的。 最后是读者,读者的功能最为简单,读者也可以平自己的用户名和密码登录系 统,但是他只能查询自己的借书信息,防止在超期的状态下还书和由于还书超期而 被罚款的记录。 2.2功能模块设计功能模块设计 经过初步的需求分析,进行了大致的功能的模块的划分,主要划分成几个模块: 图书信息管理、读者信息管理、书籍类别信息管理、库存信息管理、借阅信息管理、 图书归还管理、超期罚款的管理、用户登录管理。 系统登录控制:用户必须使用自己的用户名和密码登录系统才能够使用系 统。系统根据账户的级别自动跳转到相应的功能页面。并防止用户在未登 录的情况下访问某一功能页面。 - 5 - 图书信息管理:新书入库时,图书基本信息的输入,对已有图书的基本信 息的修改,删除等。 读者信息管理:读者账户和图书操作员账户的添加,修改和删除等功能。 书籍类别信息管理:图书类别的制定,图书类别的修改和删除。如果某一 个类别被删除,那么该分类的下的图书将会成为未分类的图书,需要通过 图书信息管理模块,重新对图书进行分类。 库存信息管理:用户可以查询图书数量,盘存图书的数量数据输入,并自 动更新盘存时间。当新书入库时会自动记录图书的数量。 借阅信息管理:实现用户借书时,借书信息的自动记录,并记录图书的借 阅时间和归还时间。 图书归还管理:实现用户还书功能,当用户还书时用户的借书的信息记录 会被删除。 超期罚款管理:实现用户交超期罚款的更新和删除,当用户还书时 会判断图书是否超期,如果超期就跳转到罚款管理页面,先计算超期的天 数,然后算出罚款的金额。 2.3 数据库需求分析数据库需求分析 数据库的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据 库结构能充分满足各种信息的输入和输出。收集基本数据,数据结构,已经数据处 理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。 通过对图书管理系统功能的分析,总结出一下基本的需求信息。 图书信息涉及分类信息、借阅信息、归还信息、罚款信息。 用户信息涉及级别信息。用户名必须是唯一的。 图书的编号必须是唯一的。 用户根据权限判断授予特定的功能。 2.4 数据库概念结构设计数据库概念结构设计 - 6 - 根据规划出的实体有:图书信息实体、读者信息实体、图书借阅信息实体、 罚款信息实体。各个实体具体的业务流程图如下: 读者 是否 可借 借书 操作员 还书 操作员 是否 超期 可借 不可借 借书 图书信息 新书入库 操作员 借书信息 还书信息 罚款信息 否 图图 2-1 系统业务流程图系统业务流程图 图书信息 图书编号书名入库日期作者 图图 2-2 图书信息实体图书信息实体 E-R 图图 - 7 - 读者信息 读者编号借阅证号注册日期密码 图图 2-3 读者信息实体读者信息实体 E-R 图图 借阅信息 图书编号书名归还日期作者 图图 2-4 借阅信息实体借阅信息实体 E-R 图图 罚款信息 罚款编号书名罚款日期罚款金额 图图 2-5 罚款信息实体罚款信息实体 E-R 图图 2.5 数据库逻辑结构设计数据库逻辑结构设计 字段名称字段名称数据类型数据类型备注备注 BookBH 文本图书编号 SortName 文本图书分类号 Bookname 文本书名 BookISBN 文本ISBN 号码 BookAuthor 文本作者 BookPress 文本出版社 PublicationsDate 日期/时间出版日期 - 8 - 表表 2-1 tb-Book(图书信息表)(图书信息表) 数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。下面是各个数据表 的字段设置信息。 字段名称字段名称数据类型数据类型备注备注 SortBH 自动编号 SortID 文本图书分类号 SortName 文本分类名称 表表 2-22-2 tb-BookSorttb-BookSort(图书分类表)(图书分类表) 字段名称字段名称数据类型数据类型备注备注 BorrowID 自动编号借书编号 BookBH 文本图书编号 BookName 文本书名 BookAuthor 文本作者 BookPress 文本出版社 LibraryCardID 文本借书证号 ReaderName 文本读者姓名 BorrowDate 日期/时间借书日期 LentDate 日期/时间应还书还书日期 表表 2-32-3 tb-Borrowtb-Borrow(图书借阅信息表)(图书借阅信息表) 字段名称字段名称数据类型数据类型备注备注 FineID 自动编号过期罚款编号 LibraryCardID 文本借书证号 ReaderName 文本读者姓名 BookBH 文本图书编号 BookPrice 数字价格 DateStorage 日期/时间入库日期 LentOr 文本借否 - 9 - BookName 文本书名 BookPress 文本出版社 DateNum 数字超期天数 PriceNum 数字罚款单价 FineNumber 数字罚款金额 RealFine 数字实际缴款金额 FineDate 日期/时间罚款日期 表表 2-42-4 tb-Finetb-Fine(罚款单信息表)(罚款单信息表) 字段名称字段名称数据类型数据类型备注备注 LevelID 自动编号级别编号 LevelName 文本级别名称 OverdueFines 数字过期罚款 BorrowNumber 数字借书总数 BorrowDays 数字借书天数 表表 2-52-5 LevelLevel(各用户的借书权限表)(各用户的借书权限表) 字段名称字段名称数据类型数据类型备注备注 readerID 自动编号读者编号 LibraryCardID 文本借书编号 Readerpwd 文本用户密码 readerName 文本姓名 ReaderSex 文本性别 ReaderUnits 文本单位 ReaderLevel 文本级别 BorrowBookNumber 数字借书总数 RegistrationDate 日期/时间登记日期 表表 2-62-6 tb-Readertb-Reader(用户信息表)(用户信息表) 字段名称字段名称数据类型数据类型备注备注 ReturnBookID 自动编号还书编号 - 10 - BookBH 文本书籍编号 BookName 文本书籍名称 BookAuthor 文本图书作者 Bookpress 文本出版社 LibraryCardID 文本借书证号 ReaderName 文本读者姓名 BorrowDate 日期/时间借书日期 ReturnDate 日期/时间实际还书日期 LentDate 日期/时间应该还书日期 表表 2-72-7 ReturnReturn(图书借阅者信息表)(图书借阅者信息表) 字段名称字段名称数据类型数据类型备注备注 StockID 自动编号库存编号 BookName 文本书名 BookNumber 数字库存图书数量 BookNumber2 数字盘存图书数量 BoookNumberDate 日期/时间盘查图书数量的时间 SortName 文本分类名称 RegistrationDate 日期/时间登记日期 bookISBN 文本图书 ISBN 号 表表 2-82-8 tb-StockInformationtb-StockInformation(图书库存信息表)(图书库存信息表) 2.6 系统流程及功能模块划分系统流程及功能模块划分 根据系统功能分析,得出下图:2-6 系统功能图 - 11 - 图书管理系统图书管理系统 读者登录操作员登录管理员登录 添 加 用 户 用 户 信 息 修 改、 删 除 添 加 类 别 类 别 信 息 修 改、 删 除 图 书 借 阅 图 书 归 还 借 阅 信 息 维 护 罚 款 信 息 管 理 图 书 数 量 管 理 新 书 入 库 管 理 图 书 信 息 维 护 借 书 信 息 查 询 罚 款 记 录 查 询 修 改 密 码 修 改 密 码 修 改 密 码 图图 2-6 系统功能图系统功能图 - 12 - 3.系统详细设计系统详细设计 本系统的设计的最大的特色是采用了分层的设计思想,系统界面采用 Web 页面 作为表现层和数据粘合层,为了进行一些常用的逻辑处理的需要还创建了业务逻辑 层,为了为逻辑处理提供数据有创建了数据层,同时为了数据访问创建了数据模型 层。在本节中示例的功能代码,都比较短并且不具体,那是因为很多功能都封装的 功能类库里了,这里说明一下。具体请看系统源代码。各个功能层关系如下图 (3.1): 用户表示层数据粘合层 数据层 数据模型 业务逻辑层 图图 3-1 3.1 登录模块登录模块 图图 3-2 系统登录界面系统登录界面 如果使用系统就必须先登录到系统,用户使用登录模块登录系统。界面效果如 图 3-2: 单击“登录”按钮的处理代码如下: string str_name; string str_password; string str_sql; - 13 - /获取用户输入的登录用户名和密码 str_name = TextBoxUserName.Text.ToString().Trim(); /去除用户名两边的空格 str_password = FormsAuthentication.HashPasswordForStoringInConfigFile(TextBoxMM.Text.ToString(), “MD5“); /查询相应的用户名和密码的 SQL 语句 str_sql = “select ReaderName,ReaderLevel,readerID from tb_Reader where LibraryCardID=“ + str_name + “and Readerpwd=“ + str_password + “; OleDbDataReader dr = ms.Datareader(str_sql); if (dr.Read() = true) /session 变量记录用户名 Session“user“ = dr“ReaderName“.ToString().Trim(); /session 变量记录管理员级别 Session“userlevel“ = dr“ReaderLevel“.ToString().Trim(); /Session 变量记录读者的 ID 号 Session“userID“ = dr“readerID“.ToString().Trim(); /Session 变量记录读者的借阅证号 Session“userCardID“ = str_name; /session 变量记录读者的密码 Session“userPwd“ = str_password;/ ms.Close(); /返回跳转的目的页 string strweb = LoginManager.UserLevel(Session“userlevel“.ToString(); Response.Write(“ alert(登录成功!即将跳转!); location=“ + strweb + “); else ms.Close(); this.LabelErrorMessage.Visible = true; - 14 - this.LabelErrorMessage.Text = “您必须输入有效的用户名和密码!“; 图图 3-3 登录成功提示登录成功提示 登录的用户先弹出提示登录成功并按用户级别自动跳转到相应的功能页面,判 断用户级别 的代码在业务逻辑层,代码如下: switch (strLevel) case “系统管理员“: strLevel = “a_UserReg.aspx“; break; case “图书管理员“: strLevel = “BookBorrow.aspx“; break; default: strLevel = “ReaderQuery.aspx“; break; return strLevel; 3.2 管理员功能设计管理员功能设计 图图 3-4 管理员功能截图管理员功能截图 当用户登录成功后,在功能列表中会显示当前用户的用户姓名。管理员功能列 表如图 3-4:所示。限于篇幅这里只介绍一下用户注册功能,和图书类别管理。因为 提示登录成功 - 15 - 用户名必须是唯一的,所以当用户点击提交时先判断用户名是否可用,如果已经有 此用户则提示。为了增强用户密码的安全性,用户的密码是经过 md5 加密以后再 图图 3-5 提示注册成功提示注册成功 存入数据库的。主要代码如下: string str_sql; /判断该用户是否已经注册 string str_sqlName = “select LibraryCardID from tb_Reader where LibraryCardID=“+TextBoxUserName.Text.Trim()+“; OleDbDataReader dr = ms.Datareader(str_sqlName); if (dr.Read() TextBoxUserName.Text = null; ms.Close(); Response.Write(“ alert(该用户已经注册! );location=javascript:history.go(-1)“); else string pwd = FormsAuthentication.HashPasswordForStoringInConfigFile(TextBoxpwd2.Text.ToStrin g().Trim(), “MD5“); /在用户表中插入新数据的SQL语句 str_sql = “insert into tb_Reader(LibraryCardID,Readerpwd,ReaderLevel,ReaderName,ReaderSex,ReaderUnits, RegistrationDate) values (“ + TextBoxUserName.Text + “,“ + pwd + “,“ + DropDownListLevel.SelectedValue.ToString() + “,“ + TextBoxRealName.Text + “,“ + RadioButtonListSex.SelectedItem.Text + “,“ + TextBoxUnits.Text + “,“+DateTime.Now+“)“; ms.ExecSql(str_sql);/执行插入操作 TextBoxUserName.Text = null; TextBoxRealName.Text = null; TextBoxUnits.Text = null; Response.Write(“ alert(数据提交成功!); location=javascript:history.go(-1)“); - 16 - 图图 3-6 图书类别管理功能截图图书类别管理功能截图 图图 3-7 提示删除需要重新分类提示删除需要重新分类 可以对分类进行编辑和更新等操作,当然也可以把它删除,但是删除时必须该 分类下的图书就没办法表示了,我设计了一个“未分类”的分类,如果某一个分类 的图书被删除后那么该分类下的图书的分类就是未分类。为防止用户无删除,我设 计了,即使是用户无意中点中了“删除”按钮,也不要紧,因为它会提示(如图 3- 7)用户是否删除。 3.3 操作员功能设计操作员功能设计 图图 3-8 操作员功能操作员功能 - 17 - 操作员的功能是最复杂的,它包含了系统的大部分的功能(功能列表如右图) , 其中包括图书借阅、图书归还、罚款管理、借阅管理、新书入库、图书管理、库存 管理和修改密码等功能。同样这里仅仅介绍了图书数量管理。 当用户进行新书入库操作时,图书会自动统计图书的数量,实现数量的自动 化管理。用户还要定期盘存图书的实际在架的数量,在库存信息管理中输入,当用 户更新了盘存信息后,系统会记录下图书的盘存时间,以便于提供参考。 用户可以根据图书分类和图书名称来进行模糊查询,图书的库存信息。在查 询条件选择要查询的方式,再在文本框内输入要查询的内容,点击查询按钮就行了, 查询的结果会在下面列表显示。 “返回”按钮的作用是返回到用户查询前的状态。主 要功能代码如下:(图 3-9) 图图 3-9 库存信息管理库存信息管理 /通过图书名称用Label显示统计信息,选择按钮的Click处理事件 string strbName=(Label)(dgbookStock.Items1.FindControl(“lbookName“).ToolTip.ToStr ing(); int sum = new bStockManager().bNumCount(strbName); int all = new bStockManager().bNumCountAll(strbName); int myPlus = all - sum; string strSum = sum.ToString(); string strAll = all.ToString(); string strmyPlus = myPlus.ToString(); lbmessage.Text = “本书共有 “ + strAll + “ 册,已借出 “ + strmyPlus + “ 册,现存 “ + strSum + “ 册“; /更新按钮的Click处理事件 string strbName = (Label)(e.Item.Cells1. FindControl(“lbookName2“).ToolTip.ToString(); int strNum = Convert.ToInt32(TextBox)(e.Item.Cells3.Controls0).Text.ToString(); new bStockManager().bUpdateForBName(strbName, strNum); dgbookStock.EditItemIndex = -1; - 18 - Bind(); /查询按钮的 Click 处理事件 DataTable dt = null; /根据查询类别和文本框的内容查询 string strSort = dropSelect.SelectedItem.Text.ToString(); string strSele = txtSelect.Text.Trim().ToString(); dt=new bStockManager().selectCase(strSort, strSele); dgbookStock.DataSource = dt; dgbookStock.DataBind(); 3.4 读者功能设计读者功能设计 图图 3-10 读者功能读者功能 读者的功能相对简单只是简单调出用的借书记录和因超期还书的罚款记录。它 根据用户登录的用户名,查询相应的记录,直接显示当前用户的借书记录。界面截 图如图: 下面的代码是用户查询借书记录代码: 图图-11-11 罚款信息功能罚款信息功能 页面加载事件的处理代码 if (!IsPostBack) string reUser = Session“userCardID“.ToString(); string strSort = dropSort.SelectedItem.ToString(); Bind(strSort, reUser); 数据绑定方法的代码 DataTable dt = null; dt = new ReaderQueryManager().seleBorroForSort(mSort, libId); - 19 - dgBorrow.DataSource = dt; dgBorrow.DataBind(); string strSort = dropSort.SelectedItem.ToString(); string reUser = Session“userCardID“.ToString(); Bind(strSort, reUser); - 20 - 4.性能测试与分析性能测试与分析 4.1 性能测试性能测试 软件的测试与证明是软件设计中必不可缺少的阶段,只有通过测试和证明,软 件的质量才能得到肯定,才能投入正式的使用。软件测试主要任务是发现并排除在 设计、编程和阶段中所产生的各种类型的错误,以得到可运行的软件系统。测试分 为三个阶段,分别是单元测试、集成测试和系统测试。 对单个程序或模块的测试称之为单元测试,验证每个模块是否满足系统设计的 要求。目的是为了消除可能导致程序异常中断的执行错误,以及在程序逻辑分析过 程中疏忽的逻辑错误。由于本系统的业务处理模块和数据提供模块,都进行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论