1、河北工业大学毕业设计(论文)第 1 页 共 19 页1 引言11 图书管理系统的现状国际上图书管理系统前景看好,而国内的在线图书,数量上也有了新的增长。数字图书,各高校的电子图书室等在线图书的出现,证明了在线图书管理系统的前景。当今世界,科学技术突飞猛进。以计算机多媒体和网络技术为代表的信息技术,以惊人的发展速度,迅速在各领域运用,教育也面临信息技术的挑战。图书馆信息管理系统建设作为学校教育现代化的基础工程已引起了我国教育行政部门和学校的高度重视。上个世纪 90 年代初美国科学家首次提出数字图书馆(Digital Library)这一概念以来,全球开展数字图书馆研究和实践已近十几个年头。我国图
2、书馆报界、IT 业界自 1995 年左右开始对这一领域跟踪研究,1998 年开始全面升温,迄今无论是在对数字图书馆的认识,还是理论研究、关键技术准备方面,都取得了很大的进展。国内数字图书馆的实践活动大致可分为以下三种类型:资源服务器型、服务研究型和联合建设型。虽然,从严格意义上讲,资源服务型不能算是数字图书馆,但它的网上信息服务目前已在大多数图书馆开展,是现阶段我国图书馆情报界提供网上数字服务的主要形式。1.2选题的目的与意义当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这证实计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,
3、不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好图书馆信息而设计的。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现金,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、河北工业大学毕业设计(论文)第 2 页 共 19 页超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对
4、借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作乱而复杂;一般借阅情况是记录在借阅证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如要再进行查询,就得在众多的资料中翻阅、查找了,造成查
5、询费时、费力。如要对很长时间以前的图书进行更改就更加困难了。基于这些问题,我认为有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书馆的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效、规范和实用的图书管理系统,对图书资料进行集中统一的管理。系统开发的总的设计目标是实现图书管理的
6、系统化、规范化和自动化,实现对图书资料的集中统一的管理。通过该系统可以实现图书信息的检索、图书借阅管理、用户个人信息的管理等各种功能,实现图书管理的快捷、高效。2 相关技术介绍本次设计首先通过查阅资料对图书领域的基本知识有一定的认识,了解用户各个方面的需求,包括现有的以及将来的可能增加的需求。然后按照数据库设计的六个阶段进行了设计与实现:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库的运行和维护。2.1 ASP.NET简介ASP.NET 是统一的 Web 应用程序平台,它提供了为建立和部署企业级 Web 应河北工业大学毕业设计(论文)第 3 页 共 19 页用程序所必需
7、的服务。ASP.NET 为能够面向任何浏览器或设备的更安全的、更强的可升级性、更稳定的应用程序提供了新的编程模型和基础结构。ASP.NET 为 Web 应用程序提供了默认的授权和身份验证方案,开发人员可以根据应用程序的需要很容易地添加、删除或替换这些方案。通过简单地将必要的文件复制到服务器上,ASP.NET 应用程序即可以部署到该服务器上,不需要重新启动服务器,甚至在部署或替换运行的已编译代码时也不需要重新启动。ASP.NET 是运行在服务器上的已编译代码。与传统的 Active Server Pages (ASP)不同,ASP.NET 能利用早期绑定、实时(JIT)编译、本机优化和全新的缓存
8、服务来提高性能。详细信息。根据应用程序的需要,ASP.NET 可以缓存页数据、页的一部分或整个页。缓存的项目可以依赖于缓存中的文件或其他项目,或者可以根据过期策略进行刷新。ASP.NET 在内部使用 Unicode 以表示请求和响应数据,可以为每台计算机、每个目录和每页配置国际化设置。ASP.NET 支持任何设备上的任何浏览器。开发人员使用与用于传统的桌面浏览器相同的编程技术来处理新的移动设备。ASP.NET 被设计成可扩展的、具有特别专有的功能来提高群集的、多处理器环境的性能。除此之外,Internet 信息服务(IIS)和 ASP.NET 运行时密切监视和管理进程,以便在一个进程出现异常时
9、,可在该位置创建新的进程使应用程序继续处理请求。ASP.NET 提供了跟踪服务,该服务可在应用程序级别和页面级别调试过程中启用。可以选择查看页面的信息,或者使用应用程序级别的跟踪查看工具查看信息。在开发和应用程序处于生产状态时,ASP.NET 支持使用.NET Framework 调试工具进行本地和远程调试。当应用程序处于生产状态时,跟踪语句能够留在产品代码中而不会影响性能。与.NET Framework 集成。 因为 ASP.NET 是.NET Framework 的一部分,整个平台的功能和灵活性对 Web 应用程序都是可用的。也可从 Web 上流畅地访问.NET 类库以及消息和数据访问解决
10、方案。ASP 和 ASP.NET 可并行运行在 IIS Web 服务器上而互不冲突;不会发生因安装ASP.NET 而导致现有 ASP 应用程序崩溃的可能。ASP.NET 仅处理具有.aspx 文件扩展名的文件。具有.asp 文件扩展名的文件继续由 ASP 引擎来处理。然而,应该注意的是会话状态和应用程序状态并不在 ASP 和 ASP.NET 页面之间共享。ASP.NET 启用了河北工业大学毕业设计(论文)第 4 页 共 19 页分布式应用程序的两个功能:Web 窗体和 XML Web 服务。相同的配置和调试基本结构支持这两种功能。2.2 数据库 AccessAccess 是 微 软 公 司 推
11、 出 的 基 于 Windows 的 桌 面 关 系 数 据 库 管 理 系 统( RDBMS, 即 Relational Database Management System) , 是 Office 系 列 应 用软 件 之 一 。 它 提 供 了 表 、 查 询 、 窗 体 、 报 表 、 页 、 宏 、 模 块 7 种 用 来 建 立 数 据库 系 统 的 对 象 ; 提 供 了 多 种 向 导 、 生 成 器 、 模 板 , 把 数 据 存 储 、 数 据 查 询 、 界 面设 计 、 报 表 生 成 等 操 作 规 范 化 ; 为 建 立 功 能 完 善 的 数 据 库 管 理 系
12、统 提 供 了 方 便 ,也 使 得 普 通 用 户 不 必 编 写 代 码 , 就 可 以 完 成 大 部 分 数 据 管 理 的 任 务 。Access 能 够 存 取 Access/Jet、 Microsoft SQL Server、 Oracle(甲 骨 文 软件 公 司 ), 或 者 任 何 ODBC 兼 容 数 据 库 内 的 资 料 。 熟 练 的 软 件 设 计 师 和 资 料 分 析师 利 用 它 来 开 发 应 用 软 件 , 而 一 些 不 熟 练 的 程 序 员 和 非 程 序 员 的 “进 阶 用 户 “则能 使 用 它 来 开 发 简 单 的 应 用 软 件 。 A
13、ccess 具 有 很 多 优 点 : 存 储 方 式 简 单 易 于维 护 管 理 、 界 面 友 好 易 操 作 、 集 成 环 境 处 理 多 种 数 据 信 息 、 支 持 广 泛 易 于扩 展 弹 性 较 大 等 。 总 之 , Access 是 一 个 既 可 以 只 用 来 存 放 数 据 的 数 据 库 , 也 可以 作 为 一 个 客 户 端 开 发 工 具 来 进 行 数 据 库 应 用 系 统 开 发 ; 即 可 以 开 发 方 便 易 用 的小 型 软 件 , 也 可 以 用 来 开 发 大 型 的 应 用 系 统 。2.3 C#简介C sharp(又 被 简 称 为
14、“C#“)是 微 软 公 司 在 2006 年 6 月 发 布 的 一 种 新 的 编 程语 言 ,并 定 于 在 微 软 职 业 开 发 者 论 坛 (PDC)上 登 台 亮 相 .C#是 微 软 公 司 研 究 员Anders Hejlsberg 的 最 新 成 果 .C#看 起 来 与 Java 有 着 惊 人 的 相 似 ;它 包 括 了 诸如 单 一 继 承 ,界 面 ,与 Java 几 乎 同 样 的 语 法 ,和 编 译 成 中 间 代 码 再 运 行 的 过 程 .但 是 C#与 Java 有 着 明 显 的 不 同 ,它 借 鉴 了 Delphi 的 一 个 特 点 ,与 C
15、OM(组 件 对象 模 型 )是 直 接 集 成 的 ,而 且 它 是 微 软 公 司 .NET windows 网 络 框 架 的 主 角 。 C#拥有 比 C,C+或 者 Java 更 广 泛 的 数 据 类 型 .这 些 类 型 是 bool, byte, ubyte, short, ushort, int, uint, long, ulong, float, double,和 decimal.象Java 一 样 ,所 有 这 些 类 型 都 有 一 个 固 定 的 大 小 .又 象 C 和 C+一 样 ,每 个 数 据 类 型都 有 有 符 号 和 无 符 号 两 种 类 型 .与 J
16、ava 相 同 的 是 ,一 个 字 符 变 量 包 含 的 是 一 个16 位 的 Unicode 字 符 .C#新 的 数 据 类 型 是 decimal 数 据 类 型 ,对 于 货 币 数 据 ,它河北工业大学毕业设计(论文)第 5 页 共 19 页能 存 放 28 位 10 进 制 数 字3 系统设计3.1系统设计目标本图书馆公共检索系统主要面向于现今广大图书馆工作单位的图书管理员在对图书及用户进行管理时所采用的应用系统,通过图书管理员的管理实现图书管理、读者管理、借阅情况查询、图书借还等功能,这样以来当读者登录系统后即可实现图书检索还可以实现对图书的借阅、归还等功能。系统充分结合了
17、传统和现代的图书馆管理系统和图书馆检索系统特点,使系统在既符合应用系统相关要求的同时又满足图书馆单位个性化的需求。可以方便灵活的使用本系统为读者服务。利用数据库技术实现对图书馆的数据和信息系统化、程序化的组织管理,将以往低效、功能简单的传统图书馆管理系统和图书馆检索系统合起来发展成为依靠计算机自动化技术来进行图书馆管理、图书信息检索、图书借阅等操作合为一体的高级管理软件。通过对此系统的实施、运行,管理从而方便、快捷、准确地进行读者借还、图书信息检索以及图书管理,此外通过查看图书借阅排行榜即可了解到本馆各类书籍的受欢迎程度,为读者以提供良好的信息帮助供其进行参考,以便能提高该系统在图书馆系统中的
18、市场竞争力和服务的质量。3.2 系统需求分析软件需求分析是软件开发期的第一个阶段,也是关系到软件开发成败的关键步骤。准确、完整和规范化的软件需求是软件开发成功的关键。它的重要性在于让用户完全清楚对软件系统的确切要求,它不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作。也就是对目标系统提出完整、准确、清晰、具体的要求。反复的调查和研究,了解数据库的组织的详细情况,了解管理的业务流程等系统需求,它对于设计好概念模型是至关重要的。一个好的管理系统可以将我们的管理员从繁重的工作中解脱出来,使工作更轻松。而需求分析的好坏直接影响到系统设计的好坏。(1)管理员对功能的需求: 注册读者的查询、
19、删除、添加河北工业大学毕业设计(论文)第 6 页 共 19 页 图书的查询、删除、新增 借阅情况的查询(2)读者对功能的需求: 普通读者能够注册 普通读者对图书的浏览 图书的查询 图书的借阅和归还系统的设计应达到以下要求:1)运用 ASP.NET 技术开发系统界面,用 ACCESS 完成数据库的建立,数据表的设计的设计。2)界面美观、简洁,易于操作,清楚体现其功能。3)系统要求稳定,功能要基本满足在线图书馆的需要。4)毕业论文严格按学校的要求撰写。5)系统要求具有一定的可扩展性。3.3可行性分析本系统主要实现对图书馆信息的管理,主要功能为管理有关读者,书籍,借阅和管理者的信息等。本系统结构分为
20、读者信息管理模块,书籍信息管理模块,借阅信息管理模块,管理者信息管理模块。读者信息管理部分有两方面的功能,可以浏览读者的信息,可以对读者信息进行维护。书籍信息管理可以浏览书籍的信息,可以对书籍信息进行维护。借阅信息管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。管理者信息管理可以显示数据库中管理者的情况,可以对管理者信息进行维护。可见,本系统并不复杂,主要解决的问题是利用关键字对数据库进行查询。3.4 运行环境操作系统:Windows XP开发技术:ASP.NET数 据 库::Microsoft Access 2003 开发工具:Microsoft Access 2003、Vis
21、ual Studio 2005 等3.5 系统功能模块设计河北工业大学毕业设计(论文)第 7 页 共 19 页图书管理系统主要由图书管首页模块、读者注册/登录模块、读者借书/还书模块、图书管理模块、读者管理模块,如图 3.1 系统功能模块图。图 3.1 系统功能模块图各功能模块详细介绍如下: 图书馆首页模块:登录之后可以浏览本图书馆内的所有图书 读者注册/登录模块:读者必须通过注册之后才能登录到图书借阅页面进行图书的查询和借阅 读者借书还书模块:读者通过查询找到需要借阅的图书并借阅和归还 图书管理模块:管理者登录之后可以对读书进行查询、删除和添加 读者管理模块:管理者对读者信息进行查询和新增在
22、线图书馆系统主要是实现对图书的查询、借阅和归还的功能,读者必须注册之后才能查询和借还图书。不注册的用户则只能登录主界面对图书整体进行浏览,不能分类查询,也不能查询和借还图书。管理者可以对图书、读者以及借阅情况进行查询与管理经过分析得到流程图,如图 3.2 流程图管理员登录读者管理 图书管理 借阅管理注册读者登录查询借还图书主界面河北工业大学毕业设计(论文)第 8 页 共 19 页4 系统设计4.1 数据库的分析和设计结合实际情况以及对用户的需求分析,该在线图书馆的数据库中主要数据表的表结构如下:图书信息表(图书编号,图书名称,图书类别,作者,出版社,价格)读者信息表(读者 ID,用户名,密码,
23、性别)借阅情况表(读者 ID,图书编号,图书名称,图书类别,作者)表 4.1 图书信息表字段名称 数据类型 长度 默认值 允许空 字段描述图书编号 文本 50 否 主键,外键图书名称 文本 50 否图书类别 文本 50 是作者 文本 50 是主界面注册TF读者登录归还图书查询图书浏览借阅图书管理员登录借阅管理读者管理图书管理图 3.1 流程图河北工业大学毕业设计(论文)第 9 页 共 19 页出版社 文本 50 是价格 货币 50 是表 4.2 读者信息表字段名称 数据类型 长度 默认值 允许空 字段描述读者 ID 文本 50 否 主键,外键用户名 文本 50 是密码 文本 50 是性别 文本
24、 50 是 只能为“男”或“女”表 4.3 借阅情况表字段名称 数据类型 长度 默认值 允许空 字段描述读者 ID 文本 50 否 主键图书编号 文本 50 否 主键图书名称 文本 50 是图书类别 文本 50 是作者 文本 50 是4.2系统实现4.2.1 Access 数据库的连接ASP.net 连接数据库前要先引入命名空间代码如下:using System.Data.Oledb;通过 Connection 对象来连接数据库,代码如下:OleDbConnection conn = new OleDbConnection();conn.ConnectionString = “Provider
25、=Microsoft.Jet.OleDb.4.0;“ + “Data Source=“ + Server.MapPath(“App_Data/数据库.mdb“);/设置连接字符串conn.Open();/打开数据库4.2.2 网站首页用户进入网站之后可以进行图书的浏览,注册成功之后可以登录然后对图书进行查询、借阅和归还。管理者登录可对注册读者、图书以及借阅情况进行管理。网站如图 4.1 主界面所示:河北工业大学毕业设计(论文)第 10 页 共 19 页图 4.1 主界面管理员登录:if (txtUsername.Text = “管理员“ Response.Redirect(“管理者页面.asp
26、x“);/管理员密码输入正确则跳转到管理者页面会员登录:先要连接数据库if (txtUsername .Text =dr “用户名“.ToString ()strPassword = dr“密码“.ToString ();break;/输入的用户名和密码与数据库中的相同则将值传给 strUsername,之后根据strUsername 有无值判定是否可以登录4.2.3 注册普通用户必须注册之后才能查询和借阅图书,在注册时通过验证控件设置了几个不为空的,当输入为空或格式不正确时会报错,提醒你正确必须填写相关内容,用户注册效果图如图 4.2 读者注册所示。该模块的功能有:1) 验证注册用户的信息。