学位论文-—正文图书管理系统.doc
《学位论文-—正文图书管理系统.doc》由会员分享,可在线阅读,更多相关《学位论文-—正文图书管理系统.doc(40页珍藏版)》请在咨信网上搜索。
1、太原理工大学高等教育自学考试 继续教育学院综合作业报告课程名称: 图书管理系统 考 号: 姓 名: 专 业: 计算机及应用 单 位: 山西计算机科技学院 指导老师: 成 绩: 优 良 中 及格 不及格 二一年五月十五日摘要本文首先介绍了数据库管理系统(DBMS)的基本概念及关系模型等。然后对问题的来源进行深入分析,指出图书借阅者、图书馆工作人员和图书馆管理人员是问题主要来源,并指出本数据管理系统的实用性功能就是管理好图书馆信息,提高工作效率,避免数据处理手工操作,工作量大,出错率高的弊端。接着对需求分析进行细致的分析,特别对图书借阅者、图书馆工作人员和图书馆管理人员三者权限进行分配。接着对系统
2、功能模块进行分析,指出本系统功能模块主要分为“图书资料管理”模块、“学生资料管理”模块、“借还书操作”模块。总的来说,本图书管理系统,介绍了该系统组成结构、功能特点、使用原理和方法,本系统实现了系统登陆、图书管理、学生管理图书的借阅与归还、图书借阅排行榜和查看逾期未还图书以及各种信息的打印等功能。有了这个系统就使图书馆的工作变得简单了许多,使图书馆的图书管理形成了一个整体自动化管理模式。管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,企业要生存要发展,要高效率地把企业活动有机地组织起来,就必须加强企业管理,即加强对企业内部的各种资源(人、财、物等)的有效管理,建立与
3、自身特点相适应的管理信息系统。图书馆管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端的应用程序的开发两个方面。对于前者要求建立数据的一致性和完整性,对于后者则要求应用程序功能的完备,易用等的特点。基于上述考虑本系统主要利用Microsoft Visual Studio 2005作前端的应用开发工具 ,利用SQL Server 2000 作为后台的数据库,利用WINDOWS作为系统平台开发的图书管理系统。另外本图书馆管理系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法。关键词:C#程序设计语言,
4、SQL SERVER 2000,软件工程目录 摘要2第1章 基础理论知识51.1 数据库应用系统开发简介51.2 数据库管理系统51.3 Microsoft Visual Studio 2005简介61.4 C#语言简介61.4.1 C#中OOP概述61.4.2 面向对象的C# 编程81.4.3 接口与继承12第二章 系统开发背景14第三章 需求分析153.1 应用需求分析153.2实际需求分析15第四章 可行性分析164.1 环境可行性分析164.2 面向对象的程序分析16第五章 系统概要设计175.1 模块分析175.1.1 功能模块图175.2 模块分析175.2.1 “图书资料管理”模
5、块175.2.2 “学生资料管理”模块185.2.3 “借还书操作”模块18第六章 详细设计186.1 设计创建数据库186.1.1 设计数据库186.1.2 创建数据库196.2 创建系统主程序226.3 创建系统常用类226.3.1 创建“移动记录工具栏”类236.3.2 创建“命令按钮工具栏”类236.4 创建登录表单236.4.1 系统主表单的功能236.4.2 创建系统主表单界面246.4.3. 新书入库256.4.4 图书借阅266.4.5 图书归还276.4.6 图书信息查询286.4.7 图书信息修改296.4.8 旧书销毁306.4.9 图书证的办理及证件信息修改326.4.
6、10证件挂失与注销326.4.11 图书类别信息排行336.4.12 库存外借信息346.4.13 图书借阅排行榜35第七章 结果分析36项目学习心得体会37结束语38致谢39第1章 基础理论知识1.1 数据库应用系统开发简介在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。数据库技术在计算机软件邻域研究中一
7、直是非常重要的主题,产生于60年代,40多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着WorldWideWeb(WWW)的猛增及Internet技术的迅速发展,使得数据库技术一时成为最热门技术之一。1.2 数据库管理系统数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS看成是某种数据模型在计算机系统上的具体实现。根据数据模型的不同,DBMS可以分成层次型、网状型、关系型、面向对象型等。S
8、QL Server 2000就是一种关系型数据库管理系统。关系模型。关系模型主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。关系模型是数学化模型。SQL语言是关系数据库的标准化语言,已得到了广泛的应用。1.3 Microsoft Visual Studio 2005简介2005 年,微软发布了 Visual Studio 2005。.NET 字眼从
9、各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。这个版本的 Visual Studio 包含有众多版本,分别面向不同的开发角色。同时还永久提供免费的 Visual Studio Express 版本运行库实际上在组件的运行时和开发时操作中都起到很大的作用,尽管名称中没有体现这个意思。在组件运行时,运行库除了负责满足此组件在其他组件上可能具有的依赖项外,还负责管理内存分配、启动和停止线程和进程,以及强制执行安全
10、策略。在开发时,运行库的作用稍有变化;由于做了大量的自动处理工作(如内存管理),运行库使开发人员的操作非常简单,尤其是与今天的 COM 相比。特别是反射等功能显著减少了开发人员为将业务逻辑转变为可重用组件而必须编写的代码量。1.4 C#语言简介C#(C Sharp)是微软于2000年提出的一种源于C+、类似于Java的面向对象编程语言,适合于分布式环境中的组件开发。C# 是专门为.NET设计的,也是.NET编程的首选语言。1.4.1 C#中OOP概述程序设计语言,在思想上发展很快,在技术上也是不断创新。经历了手工操作(控制面板)、机器语言、汇编语言、宏汇编语言、高级语言和第4代语言等多个阶段。
11、OOP只是在高级程序设计语言中,流行的多种编程技术之一。1基本特征面向对象编程的三个基本特征是:l 封装(encapsulation) 是对问题的抽象,以达到信息隐藏的目的。通过类和对象,将属性(数据/变量)和方法(操作/函数)封装在一个黑箱内,将细节隐藏起来。既可以保护数据不被他人恶意或大意地修改,又能防止其他程序员编写高耦合度的代码,还方便了今后对对象内部的修改和升级。l 继承(inheritance) 利用问题和事物的相似性,通过类的(多层)继承机制,可以达到减少软件开发难度和重用已有对象的属性和方法之目的。l 多态(polymorphism) 同一操作或响应,可以同时针对多个可选的类型
12、和对象,并且能够自动在它们中间选择最合适的来进行。多态可以分为:n 编译时多态:包括函数和运算符的重载(overload),通过早期的静态绑定(binding)来实现。n 运行时多态:通过继承结合晚期动态绑定来实现用同一基类的指针,可以访问各个不同派生类中的同名方法和函数。2基本概念面向对象编程的基本概念(类似的概念多、表达不够准确、各处的用法各异):l 抽象(abstraction) 一个问题的本质特征。忽略一个对象的细节,致力于一般的合适级别的程序能力。抽象是在事物的周围绘制透明的盒子,是定义事物接口的行为。l 信息隐藏(information hiding) 限制外部对类属性(数据成员)
13、的访问。l 封装(encapsulation) 将某种保密和隐匿应用到类中的数据和一些方法(函数或子例程)上。封装确保一个对象只能通过确定的渠道(即类的公用方法)才可被修改。封装意味着将数据及相关函数打包到一个单一的单元(类)中。每个对象暴露一个接口(公用方法),规定其他对象可以如何读取或修改它。l 类(class) 问题的抽象,对象的模版,接口的实现。例如int是整数的模版、CPoint是点的模版。l 对象(object) 问题中的事物,类的实例(变量),拥有数据和功能。若int i; CPoint p; 则i是int的实例变量,p是CPoint的实例对象。l 实例(instance) 一个
14、对象,是某个类的示例。l 实例化(intantiate) 由类定义创建对象。l 继承(inheritance) 创建子类的机制,一种“is a”或“is like”关系,形成类层次结构。是OOP中对象重用的核心概念。l 子类(subclass) 继承自另一个类的派生类(derived class)。l 超类(superclass父类) 被另一个类继承的基类(base class)。l 虚函数(virtual function) 可以在子类中被覆盖(override)的函数。l 纯虚函数(pure virtual function) 只有声明没有定义的函数,必须在派生类中被覆盖。l 抽象类(ab
15、stract class) 至少包含一个纯虚函数的类,不能被实例化。l 具体类(concrete class) 可以实例化的类,不包含纯虚函数。l 接口(interface) 纯抽象的类,类的模版。接口中的所有的方法(成员函数)都只有声明,没有定义(都是纯虚函数)。必须在接口的派生类中,实现接口的全部方法。接口可以看成是一个,定义了一套内部行为的,若干操作特征标记的集合。(在C+中,也把类的公用成员函数叫做接口)。l 属性(attribute) 类和接口中的数据信息,又叫数据成员(data member)或成员变量(member variable)。属性是类知道的事物。l 方法(method)
16、 类操作的实现,又叫成员函数(member function)。方法是类要做的事情。(在C+中,也把虚函数叫做方法)。l 重载(overload) 一个类中的,参数的数目、类型或排列顺序不同的多个同名方法(成员函数)。l 覆盖(override) 在子类中重新定义(与父类中的定义有区别的)属性和方法。l 持久化(persistence) 将对象存入永久存储中(如文件、数据库等)。l 持久对象(persistent object) 存入永久存储的对象。1.4.2 面向对象的C# 编程1类类类型定义包含数据成员、函数成员和嵌套类型的数据结构,其中数据成员包括常量和字段,函数成员包括方法、属性、事件
17、、索引器、运算符、实例构造函数、析构函数和静态构造函数。类类型支持继承,继承是派生类可用来扩展和专门化基类的一种机制。功能与C+/CLI的可见性说明符类似,只是增加了static修饰符。partial(分部的)用于定义分部类、结构和接口等对象类型,即将它们的定义分成多个部分,保存到多个代码文件中。这是C# 2.0新引进的功能,用于解决大型对象类型的定义问题,因为C# 不支持类体之外的方法和函数体定义。(1)访问修饰符类成员可以有如下访问修饰符(access modifiers):l public(公用的)访问无限制。l protected(保护的)只可被包含类(containing class
18、)或其派生的类型访问。l internal(内部的)只能被此程序访问。l protected internal(保护内部的)只能被此程序或其包含类所派生的类型访问。l private(私有的)只能被其包含类访问,为默认的。C# 类的public、protected、private等成员修饰符,每次只能修饰一个成员,直接位于成员声明的开始处,而且没有冒号分隔符。而不是像C+那样,一个修饰符可以修饰位于其后(直到下一个修饰符为止)的若干成员。(2)数据成员类的数据成员(data member)有: 属性 常量修饰符 const标识符 = 常量表达式 , ;其中,常量修饰符有:new、public、
19、protected、internal、private及它们的有效组合。类的数据成员可以是静态数据(使用了static修饰符),也可以是实例数据(未使用static修饰符)。静态数据为类的所有实例对象所共有,而实例数据则每个实例对象都自己的副本。常量默认是(总是)静态的。字段还可以是只读的(使用了readonly关键字,这是C# 新增的)和易变的(使用了volatile关键字,字段值一般位于CPU中的寄存器中,高效但是有效期短暂)。(3)函数成员类的函数成员(function member)有:l 属性(property)提供对对象或类的特性(characteristic)进行访问的成员。声明格
20、式为:其中,属性修饰符与方法修饰符相同,访问修饰符有protected、internal、private、protected internal和internal protected,与类成员的普通访问修饰符相比,没有public、多了internal protected(内部保护的)。l 事件(event)定义该类可生成的通知(notifications)。在发生某些行为时,可让对象通知程序。客户程序可以调用事件处理程序代码来响应该事件。声明格式为:其中,事件修饰符与方法修饰符相同。l 索引器(indexer)允许对象像数组一样被索引的一种成员。声明格式为:其中,索引器修饰符与方法修饰符类似,
21、只是少了static。l 用户定义的运算符(operator)运算符重载函数。声明格式为:l 构造函数(constructor)包括实例构造函数和静态构造函数。n 实例构造函数(instance constructor)实现初始化一个类实例所需的行为,会在创建每个类实例时被系统调用。注意:因为C# 会自动给字段初始化,所以构造函数在C# 中的作用没有在C+的大。格式为:类型名(参数列表);注意:即使调用没有任何参数的默认构造函数,也不能省去后面的圆括号“()”,不然是语法错误。例如:A a = new A();n 静态构造函数(static constructor)实现初始化一个类所需的行为,
22、会在程序装入时被系统调用。为类编写无参数的具体构造函数是C# 的一个新特征,主要用于类的静态字段或属性的运行时初始化。格式为:static 类型名(参数列表);l 终结器(finalizer)在C# 的旧版本中叫析构函数(destructor),但由于引用类型的对象是位于具有垃圾内存自动回收功能的CLR堆上,所以C# 中的析构函数的功能与C+的很不一样。为了与C+的析构函数有所区别,在C# 的新版本中,改叫终结器。格式(与C+的析构函数相同)为:类型名();。2结构C# 中的结构(struct)与C+中的类似,也可以封装数据和函数(属性和行为),是一种轻量级的类。但是它与C# 的(位于CLR堆
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学位 论文 正文 图书 管理 系统
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。