毕业设计(论 文)题目基于B/S模式的图书管理系统系 (部)计算机应用技术系专业信息管理班级13信息管理1班姓名何杰中学号201311032106指导老师张晶系主任2016年5月3日目 录第一章 绪论11. 课题背景12. 系统开发的意义13.图书馆信息化管理2第二章 图书管理系统开发相关技术的介绍31. A的介绍32.SQL Server 2005 介绍43. Web技术5第三章 基于B/S的图书管理系统的需求分析71 需求分析72 系统综合要求及运行环境73 系统可行性分析83.1经济可行性分析83.2 管理可行性分析84 组织结构分析85 数据流程分析8第四章 基于B/S的人事管理系统的设计101 数据需求102 数据库概念结构设计103 创建数据库124创建数据表125 连接数据库156主窗体设计17第五章 基于B/S的图书管理系统实现181.系统详细介绍182 登录模块183 系统管理员权限设计21第六章 基于B/S的图书管理系统的测试281.测试方案282.测试项目283.测试项目名称及测试内容285. 系统维护和改进305.1运行维护305.2系统的改进与提高30结论31致谢32参考文献33第一章 绪论1. 课题背景随着现在科学技术的进步,人类社会正逐渐走向信息化,图书馆拥有丰富的文献信息资源,是社会系统的重要组成部分,在信息社会中作用越来越重要,在我国图书馆计算机等 信息技术的应用起步于20世纪70年代末期,随着改革开放的步伐得迅速发展,特别是90年代以后,我国图书馆信息网络建设取得了较大发展,图书馆信息化建设迈向了一个新台阶。图书管理系统是智能办公系统(IOA)的重要组成部分,因此,图书管理系统也以方便、快捷的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减轻工作人员以往繁忙的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、掌握信息。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。采用SQL Server2005数据库作为后台数据库、Visual C#编程语言作为前台开发工具,通过对数据库技术进行了较深入的学习和应用,主要完成书目检索、读者管理、借阅管理、图书管理、用户维护、系统维护等系统功能。系统运行结果证明,本文所设计的图书管理系统可以满足学生和教师借阅者、图书管理员两方面的需要,达到了设计要求。2. 系统开发的意义图书管理系统是图书管理工作中不可缺少的部分,它的内容对于图书馆的管理员和使用者来说都至关重要。所以图书管理系统应该能够为管理员或读者提供充足的信息和快捷的数据处理手段。作为计算机应用的一部分,使用计算机对图书信息进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提高图书管理的效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。3.图书馆信息化管理图书馆的信息化从最初的对图书馆业务管理实行信息化发展到对图书馆各个业务流程进行系统和网络化管理,并建立大规模以个体文献目录联机查询为主的资源共享系统。进入21世纪,允许利用计算机网络和信息技术,逐步实现不同载体的实体文献的信息化管理和多方位的联机查询。图书馆的计算机信息化管理,就是将传统图书馆业务的手工操作转变成由计算机管理,既图书馆的图书期刊、音像资料等各种载体文献的采编、典藏、流通、检索及常规业务管理等工作,利用计算机技术,进行高效、准确的信息化管理。其根本目的是实现区域及地区、国家、国家间的资源共享。要达到资源共享的目的,必须制定一定的标准,只有各个系统都遵循这些标准,不同的系统间才可以实现联机查询、资源共享的效果。传统的图书管理模式其最大的特点是手工;首先要把买来的图书资料登记到资料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡片,最后把图书分类卡片按类别分别放置在文件柜里。对于有学生(教师)证的学生(教师)来说还要对他们资料作一定的记录。并且在人们来借书的时候,首先持证件者要去存放图书分类卡片的文件柜里查找想借的书是否在架,如果卡片存在,再按照图书分类卡片在相应的书架上找到需要的图书,然后登记持证件者的借还书时间和在书签条上写下借还书记录,之后把借书证留在那里;还书的时候,相对应的消去出借记录;这样做起来比较麻烦,比较费时间。传统图书管理的特点是一直以来,中小型书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、会员档案。这种管理方式存在着诸多缺点,如:手续繁琐、工作量大、效率低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。第二章 图书管理系统开发相关技术的介绍1. A的介绍ASP.Net可完全利用.Net架构的强大,安全,高效的平台特性。ASP.Net是运行在服务器后端编译后的普通语言运行时代码,运行时早绑定(EarlyBinding),即时编译,本地优化,缓存服务,零安装配置,基于运行时代码受管与验证的安全机制等都为ASP.Net带来卓越的性能。 对XML,SOAP,WSDL等Internet标准的强健支持为A在异构网络里提供了强大的扩展性。ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个.NET框架。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。在创建 ASP.NET 应用程序、Web 窗体和 Web服务时,开发人员可以选择下列两个功能,或者以他们认为合适的任何方式将它们结合起来使用。每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义,这里只是列出几种可能性而已。“Web 窗体”用于生成功能强大的基于窗体的 Web 页。生成这些页时,可以使用 ASP.NET 服务器控件来创建公共 UI元素,以及对它们进行编程以用于执行常见的任务。这些控件使您能够用可重复使用的内置或自定义组件生成 Web 窗体,从而简化页面的代码。有关更多信息,请参阅Web 窗体页。有关如何开发ASP.NET 服务器控件的信息,请参阅开发 ASP.NET 服务器控件。XML Web services 提供了远程访问服务器功能的途径。通过使用 Web服务,企业可以公开其数据或业务逻辑的编程接口,然后客户端和服务器应用程序就可以获得和操作这些编程接口。这些模型中的每一个模型都可以充分利用所有 ASP.NET 功能,以及 .NET 框架和 .NET 框架公共语言运行库的强大功能。ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。 2.SQL Server 2005 介绍SQL Server 是一个关系数据库管理系统它是由Microsoft推出的。SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据。SQL Server 提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。例如,XML数据库与Web Service的支持将使您的应用实现Internet数据互联,.net集成极大的扩展了开发空间,异构数据集成、Service Broker使您的数据和其它应用无缝集成,各种新数据类型和T-SQL扩展带来了诸多灵活性。C#、VB.net、XQuery、XMLA、ADO.net 2.0、SMO、AMO等都将成为SQL Server数据平台上开发数据相关应用的有力工具。它具有以下特点:(1)上手容易大多数的中小企业日常的数据应用是建立在Windows平台上的。由于SQL Server与Windows界面风格完全一致,且有许多向导(Wizard)帮助,因此易于安装和学习,有关SQL Server的资料、培训随处可得,并且目前国内具有MCDBA认证的工程师不在少数。(2)兼容性良好由于今天Windows操作系统占领着主导地的位,选择SQL Server一定会在兼容性方面取得一些优势。另外,SQL Server 2005 除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。尤其是它可以直接存贮 XML 数据,可以将搜索结果以 XML格式输出等特点,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。这些特点在.NET 战略中发挥着重要的作用。(3)电子商务在使用由Microsoft SQL Server 2005关系数据库引擎的情况下,XML数据可在关系表中进行存储,而查询则能以XML格式将有关结果返回。此外,XML支持还简化了后端系统集成,并实现了跨防火墙的无缝数据传输。你还可以使用Hypertext Transfer Protocol(超文本传输协议,HTTP)来访问SQL Server 2005,以实现面向SQL Server 2005数据库的安全Web连接和无须额外编程的联机分析处理(OLAP)多维数据集。(4)数据仓库Microsoft SQL Server 2005非常明显的改进就是增加了OLAP(联机分析处理)功能,这可以让很多中小企业用户也可以使用数据仓库的一些特性进行分析。OLAP可以通过多维存储技术对大型、复杂数据集执行快速、高级的分析工作。数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势,它允许组织或机构最大限度的从数据中获取价值。通过对现有数据进行有效分析,这一功能可以对未来的趋势进行预测。3. Web技术浏览器/服务器(Browser/Server)结构:随着Web和Internet计算环境的发展,将使企业能够以更快的速度、更低的费用去创建和布置企业的应用系统,因而,普遍认为C/S架构将会被B/S结构取代。Internet为数据库应用系统提供了新的机会,采用B/S结构,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explores;中间层采用Web服务器,它接受客户端的请求,将其转换为SQL语句,通过ODBC或其他手段传给数据库服务器,并将数据库服务器返回的结果用HTML文件格式传回给客户机。客户机的要求大大降低,大部分程序在服务器端执行。采用3层体系结构的Web应用程序由Web浏览器、Web服务器和数据库3部分组成,如图2-1所示。Web浏览器与Web服务器之间的通信仍然遵循HTTP,Web服务器与数据库之间的通信遵守CGI(Common Gateway Interface)或者Server API规范。在采用三层体系结构的Web应用程序中,Web浏览器向Web服务器请求某个HTML文档或者请求执行某个CGI脚本程序。Web服务器根据Web浏览器请求的是某个CGI程序或者API程序,Web服务器则执行(或调用外部程序执行)该程序,然后将程序执行结果返回给Web浏览器。习惯上,我们把采用这种体系结构的Web网站称作“动态网站”。目前,互联网中绝大部分网站和大多数Web应用系统都采用了这种体系结构。IIS服务器技术:IIS(Internet Information Server Internet信息服务器)是Microsoft公司开发的一种集Web,FTP和Gopher服务于一身的服务器,它可以利用Windows XP Server的各种功能并且能在Internet上发布信息。IIS是微软随着WindowsXP Server附带的一个软件。IIS提供Internet信息服务器应用程序接口(ISAPI)扩展Web服务器的功能,并可通过ASP.NET实现Web程序的快速开发,ASP.NET支持服务器端的JavaScript, VBScript, Microsoft Java和ActiveX Server Component,还支持用VB编写的CGI程序,甚至用VB开发的C/S架构的程序不经过修改就可以在Web上发布,可以使开发动态主页更加方便,同时也保护了以前的投资。IIS还包括了Microsoft Index Server,可实现对本Web站点内容的全文检索以及Site Server Express用于分析站点访问的情况。IIS的管理功能是基于WindowsXP Server的,可充分利用WindowsXP Server提供的安全服务和目录服务。它的安全模型是以NTFS安全机制为基础的,这样利用资源管理器可以容易地管理使用IIS建立的Web站点的安全性。第三章 基于B/S的图书管理系统的需求分析1 需求分析随着社会发展,人类的生产、生活越来越离不开信息。谁拥有了更多有效地信息。谁就将在竞争中处于有利位置。信息产业正在成为一个国家的支柱。数据作为信息的载体,其管理工具数据库对于信息技术的重要性,正日益得到人们的重视。只是拥有了先进的数据库技术,才能有效地管理号浩如烟海的数据,并从中取出对自己有用的信息加以利用。在设计图书管理系统之前,应当知道什么是数据库以及VB.NET的开发环境。所谓数据库是指以一定的组织方式储存在一起的,能为多个用户所共享的,与应用程序彼此独立的相关联的数据集合。而数据库系统是指实现有组织的动态的存储大量关联数据,支持多用户访问的计算机软硬件资源与数据库管理员组成的系统。我们的系统是按用户的需求进行数据库定义、存取、运行、建立和维护功能,系统的数据库定义如图3-1管理员表借出图书表读者类别表图书表读者表存放位置表图书类别表数据库图3-1 系统数据库定义图2 系统综合要求及运行环境图书管理系统是基于Windows操作系统基础上,通过对大量图书馆管理系统的研究和分析并结合对单位图书信息管理进行分析提出来的。对原有图书馆信息管理的非图形界面操作对原来管理方法不稳定性、不可靠性等缺陷相应提出了一些要求:(1)要求提高系统的可交互性,有友好的用户界面(2)要求提高系统的安全性,防止非法用户进入。(3)要求提高系统的可操作性,方便用户操作。(4)要求提高系统的可维护性,系统的数据要求能随时进行备份与恢复。3 系统可行性分析3.1经济可行性分析图书馆开发了一个满足业务要求的管理信息系统,由于提高了效率,减少了人工和用时,系统的开发应用带阿里无形巨额经济效益,因此可见在经济上是完全可行的。3.2 管理可行性分析图书馆领导者必须具有高度的适应性,不仅要适应变化的对象和内容,而且适应变化的力度和节奏,要善于敏锐地发现变化的动向,善于果断地捕捉变化的契机,善于促进本馆工作的变革与更新。4 组织结构分析组织在这里是指一个单位或部门。我们到任何一个组织中区调查研究,首先接触到的具体情况是系统的组织结构。组织结构师指组织内部的部门划分以及它们的相互关系。现行系统中信息的流动关系是以组织结构为背景的。在一个组织中,各部门之间存在着各种关联。主要有以下几种:(1)领导关系(2)信息传递关系(3)资源传递的关系5 数据流程分析数据流程是系统中的信息处理的方法和过程的统一。由于老的系统中的数据处理时建立在手工处理或成就的信息处理手段的基础上的,我们有理由相信,新的信息技术条件将为数据处理提供较为有效地处理方法。本系统数据流程分析如图3-2:图3-2 数据分析图第四章 基于B/S的人事管理系统的设计1 数据需求根据系统的需求,首先将要记录的信息分类,要记录的信息如下。(1)读者信息:包括证号、姓名、联系方式、已借书数目、读者类别和能否借书等。(2)出版社信息:包括名称、地址、网址、E-mail等。(3)书籍信息:包括书号、丛书系列、作者、责任编辑、字数、定价、出版时间、主题分类、二级分类、馆内借阅分类、总册数、库存量、出版社和书名等。(4)借阅信息:包括借阅日期、应归还日期、实际归还日期、能否续借、书号和证号等。(5)管理者信息:包括管理者名称、对应密码和对应权限等。根据这些需要,本系统需要“读者信息”表,“出版社信息”表,“书籍信息”表,“借阅信息”表和“管理者信息”表。2 数据库概念结构设计根据规划出的实体有:图书信息实体、读者信息实体、图书借阅信息实体、罚款信息实体。各个实体具体的业务流程图如下:图书信息实体E-R图,如图2-1所示:图2-1 图书信息实体E-R图系统业务流程图,如图2-2所示:图2-2 系统业务流程图读者信息实体E-R图,如图2-3所示:图2-3 读者信息实体E-R图借阅信息实体E-R图,如图2-4所示:图2-4 借阅信息实体E-R图罚款信息实体E-R图,如图2-5所示:图2-5罚款信息实体E-R图3 创建数据库(1)在服务器资源管理器中的任一节点右击。(2)执行快捷菜单中的“新建数据库”命令,并在打开的“创建数据库”话框中输入数据库名Library,选中“使用WindowsNT集成安全性”单选按钮。(3)单击“确定”按钮,则新建的数据库就会出现在服务器上。4创建数据表创建数据库后,为Library数据库添加数据表,步骤如下。(1)在服务器资源管理器中右击数据库Library下的“表”文件夹。在弹出的快捷菜单中执行“新建表”命令,出现表设计器。(2)本系统使用的数据库管理系统为SQL Server 2005。数据库中的表有管理员信息表、图书信息表、读者信息表、管理员权限表、图书借阅归还表等。图书管理表主要显示管理此图书馆人员的基本信息。图书管理员基本信息表tb_admin,如表4-6所示。表4-6 tb_admin(管理员)表字段名数据类型长度主键描述idvarchar50是管理员编号namevarchar50否管理员名称pwdvarchar30否密码读者详细信息表tb_reader,如表4-7所示:表4-7 tb_reader(读者信息)表字段名数据类型长度主键描述idvarchar30是读者编号namevarchar50否读者名称sexchar4否性别typevarchar50否读者类型 birthday smalldatetime4否生日paperTypevarchar20否证件类型paperNumvarchar30否证件号码telvarchar20否电话emailvarchar50否E-mailcreateDatesmalldatetime4否注册日期opervarchar30否操作员remarktext16否备注borrownumint4否 借阅次数图书详细信息表tb_bookkifo,如表4-8所示:表4-8 tb_bookkifo(图书信息)表字段名数据类型长度主键描述Bookcodevarchar30是图书条形码booknamevarchar50否图书名称typevarchar50否图书类型autorvarchar50否作者translatorvarchar50否译者pubnamevarchar100否出版社pricemoney8否价格pageint4否页码bcasevarchar50否书架storagebigint8否 存储数量inTimesmalldatetime4否入馆时间opervarchar30否操作员borrownumint4否被借次数图书借阅和归还信息表tb_borrowandback,如表4-9所示:表4-9 tb_borrowandback(图书借阅和归还信息)表字段名数据类型长度主键描述idvarchar30是借书编号readidvarchar20否读者编号bookcodevarchar30否图书条形码borrowTimesmalldatetime4否借书时间ygbackTimesmalldatetime4否应该还书时间sjbackTimesmalldatetime4否实际还书时间borrowopervarchar30否借书操作backopervarchar30否还书操作isbackbit1否 是否归还权限信息表tb_purview,如表4-10所示。表4-10 tb_purview(权限信息)表字段名数据类型长度主键描述idvarchar50是用户编号sysetbit1否系统设置readsetbit1否读者管理booksetbit1否图书管理borrowbackbit1否图书借还syaquerybit1否系统查询5 连接数据库通过ADO.NET执行SQL语句从而对数据库进行操作,一般顺序为:先通过SqlConnection的Open函数连接到数据库,然后再通过Sqlcommand执行指定的SQL语句,执行结束后再调用SqlConnection的Close函数关闭数据库连接。 ExecuteSelectSql函数的代码如下:/// summary /// 执行select类型的sql语句,返回select得到的数据集 /// /summary /// param name=sqlSelectselect语句/param /// returns返回select得到的数据集/returns public static DataSet ExecuteSelectSql( string sqlSelect ) { SqlConnection conn = new SqlConnection(connString); SqlDataAdapter sda = new SqlDataAdapter(sqlSelect,conn); DataSet ds = new DataSet(); try { sda.Fill(ds); } catch(SqlException e) { throw new Exception(e.Message); } return ds; } ExecuteSql函数代码如下:public static int ExecuteSql( string sql ) { int rows = -1; SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(sql,conn); try { conn.Open(); rows = cmd.ExecuteNonQuery(); } catch(SqlException e) { throw new Exception(e.Message); } finally { cmd.Dispose(); conn.Close(); } return rows; }6主窗体设计indows应用程序”类型的项目,名为“图书馆管理”。将默认创建的窗体命名为“主窗体”,把“主窗体”作为本系统中的主界面。在窗体中添加两个Pannel控件,7个Button控件和7个Linklabel控件。第五章 基于B/S的图书管理系统实现1.系统详细介绍本系统的设计的最大的特色是采用了分层的设计思想,系统界面采用Web页面作为表现层和数据粘合层,为了进行一些常用的逻辑处理的需要还创建了业务逻辑层,为了为逻辑处理提供数据有创建了数据层,同时为了数据访问创建了数据模型层。在本节中示例的功能代码,都比较短并且不具体,那是因为很多功能都封装的功能类库里了,这里说明一下。具体请看系统源代码。各个功能层关系如下图5-1: 图5-1功能层图2 登录模块图5-2 系统登录界面如果使用系统就必须先登录到系统,用户使用登录模块登录系统。界面效果如图5-2:单击“登录”按钮的处理代码如下:string str_name; string str_password; string str_sql; //获取用户输入的登录用户名和密码 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(script language=javascript alert(登录成功!即将跳转!);location= + strweb + /script); } else { ms.Close(); this.LabelErrorMessage.Visible = true; this.LabelErrorMessage.Text = 您必须输入有效的用户名和密码!;}}登陆之后,如图5-3所示:提示登录成功 图5-3 登录成功提示登录的用户先弹出提示登录成功并按用户级别自动跳转到相应的功能页面,判断用户级别的代码在业务逻辑层,代码如下:switch (strLevel) { case 系统管理员: strLevel = a_UserReg.aspx; break; case 图书管理员: strLevel = BookBorrow.aspx; break; default: strLevel = ReaderQuery.aspx; break; } return strLevel;3 系统管理员权限设计系统管理员权限如图5-4所示:图5-4 管理员功能截图当用户登录成功后,在功能列表中会显示当前用户的用户姓名。管理员权限列表如图5-4:所示。限于篇幅这里只介绍一下用户注册功能,和图书类别管理。因为用户名必须是唯一的,所以当用户点击提交时先判断用户名是否可用,如果已经有此用户则提示。为了增强用户密码的安全性,用户的密码是经过md5加密注册之后,提示信息如图5-5所示:图5-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(script language=javascript alert(该用户已经注册!);location=javascript:history.go(-1)/script)); } else {Stringpwd= FormsAuthentication.HashPasswordForStoringInConfigFile(TextBoxpwd2.Text.ToString().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(script language=javascript alert(数据提交成功!);location=javascript:history.go(-1)/script)); }图书类别功能分类如图所示5-6所示:图5-6 图书类别功能管理截图提示删除分类如图5-7所示:图5-7 提示删除需要重新分类可以对分类进行编辑和更新等操作,当然也可以把它删除,但是删除时必须该分类下的图书就没办法表示了,我设计了一个“未分类”的分类,如果某一个分类的图书被删除后那么该分类下的图书的分类就是未分类。为防止用户无删除,我设计了,即使是用户无意中点中了“删除”按钮,也不要紧,因为它会提示(如图5-7)用户是否删除。3 系统设置功能设计系统功能是最复杂的,它包含了系统的大部分的功能(功能列表如图5-8),其中包括图书馆名、地址、电话、负责人、开户费、这里仅仅介绍一部分,除此之外还有图书归还、罚款管理、借阅管理、新书入库、图书管理、库存管理和修改密码等功能。系统功能如图5-8所示:图5-8 系统设置当用户进行新书入库操作时,图书会自动统计图书的数量,实现数量的自动化管理。在资料入库登记信息统计里要有编号、条形码、名称分类、存放位置。图5-9资料入库信息统计用户可以根据图书分类和图书名称来进行模糊查询,图书的库存信息。在查询条件选择要查询的方式,再在文本框内输入要查询的内容,点击查询按钮就行了,查询的结果会在下面列表显示。“返回”按钮的作用是返回到用户查询前的状态。主要功能代码如下,图5-10图5-10 图书资料管理//通过图书名称用Label显示统计信息,选择按钮的Click处理事件 string strbName=((Label)(dgbookStock.Items[1].FindControl(lbookName))).ToolTip.ToString(); 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.Cells[1].FindControl(lbookName2))).ToolTip.ToString(); int strNum = Convert.ToInt32(((TextBox)(e.Item.Cells[3].Controls[0])).Text.ToString()); new bStockManager().bUpdateForBName(strbName, strNum); dgbookStock.EditItemIndex = -1; 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();4 读者管理功能设计读者的管理功能里查询、添加、等等。显示前用户的借书记录。界面截图如图: 图5-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); dgBorrow.DataSource = dt; dgBorrow.DataBind(); string strSort = dropSort.SelectedItem.ToString(); string reUser = Session[userCardID].ToString(); Bind(strSort, reUser);第六章 基于B/S的图书管理系统的测试1.测试方案采用黑盒测试方法。对功能进行逐一测试,在输入合理及不合理的数据后测试系统的正常运作情况。2.测试项目测试1:系统登录测试测试2:图书管理测试测试3:信息查询测试测试4:系统管理测试测试5:借书测试测试6:还书测试3.测试项目名称及测试内容测试1:名称:系统登录测试目的:测试系统操作界面 内容:帐号口令输入、合理性检查、合法性检查,系统操作界面显示控制测试2:名称:图书管理测试。目的:测试图书库操作功能。内容:图书库管理界面显示控制,图书库浏览,增加图书记录,删除图书记录,编辑图书记录。测试3:名称:信息查询测试目的:测试系统信息查询功能内容:输入查询关键字,进行图书信息查询,管理员可查询学生信息,借阅信息测试4: 名称:系统管理测试目的:测试系统管理的功能内容:系统管理,创建用户,删除用户,修改用户,更改口令。测试5: 名称:借书测试目的:测试借书功能内容:学生查找书籍,找到所要书籍进行借阅测试6:名称:还书测试目的:测试还书功能内容:学生退还所借书籍,记录借还信息。4.测试用例系统登录测试:表6.1 登录测试输入输出 用户名 密码‘12degf’ 错误—用户名空‘2345’‘12456‘错误—用户名非法‘134她5’‘58687‘错误—用户名非法‘12334’‘ ’错误—密码为空‘1367’‘aig#345’错误—密码非法‘35678’‘fi 33556’错误-密码非法‘245665’‘35我469’错误—密码非法‘1’‘123’ 正确登陆成功步骤及操作:运行系统,转到登陆界面,输入用户名及密码,测试登陆功能。允许偏差:不允许任何偏差5.系统维护和改进5.1运行维护维护主要包括以下内容:(1)权限维护管理员需要对用户的用户名、密码和权限进行维护,给每位读者分配享用的用户名和密码。(2)书目管理书目需要经常进行更新,在书目信息表中更改、增加各相应的数据信息。(3)书目类别管理书目的更新操作,引起书目类别信息表的更改,管理员就需要及时调整书目类别。 5.2系统的改进与提高由于各种原因,本系统有许多缺点。针对本系统的一些缺点,在二期开发时主要在以下方面进行改进:(1)加强后台管理页面的建设本系统只是面向用户,对书目的管理只靠人工在后台操作,费时又费力。加强后台管理系统的建设,各项操作由程序执行,方便、准确,又节省人工。(2)图书查询页面功能应该加强例如:图书查询功能可以加入查询条件,方便读者查看符合要求的图书。(3)各模块之间的联系比较混乱结论经过这段时间的紧张设计,终于圆满的完成了整个设计过程。虽然中间碰到了许多困难,许多功能还不够完善,但我从中学到了许多以前书本上所不能学到的也不曾碰到过的问题,但通过不断的阅读相关书籍,开发水平有了明显提高,对系统的设计有了新的认识。这个系统的设计任务时,我碰到的最大问题是以前没有碰到过ASP技术,为什么这么说呢?系统的社会可行性和实用性方面,那是自然的,因为当今情况下,无纸化办公趋势,通过网络进行对图书的基础数据等有了更大的方便。所以在这过程中,我考虑最多的还是如何利用自己有限的技术制作出出色的系统,因为我以前主要还是以设计系统为主,平时关注的也大多是系统方面的信息,而对于系统设计却很少涉及。因此,我经常和懂得该技术的人交流,以便自己更加快的熟悉该项技术。接下来我就按先前了解的那样,先去详细地了解了图书对于建设该
文档评论(0)