《学士学位论文—-图书管理系统.doc》由会员分享,可在线阅读,更多相关《学士学位论文—-图书管理系统.doc(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2014届计算机科学与技术专业毕业设计(论文)毕业设计(论文)题 目 图书管理系统 专 业 计算机科学与技术 班 级 计123班 学 生 指导教师 2016 年I摘 要 在人类文化的传承与发展中,书籍的作用功不可没,正如高尔基所言,书籍是人类进步的阶梯,随着知识的爆炸,读者日益增多,图书馆的出现满足了人们对知识的渴望,研究怎样高效的管理图书将是一个十分有意义的课题。主要工作是图书管理和图书借还功能,图书信息是实现了图书的数字化管理,能方便管理员查看借还书记录;借书功能,读者可以通过此功能决定是否借书;还书功能,读者可以查看自己所借的图书信息;管理员可以查看借还书记录;管理员可以更新图书信息。本
2、系统使用HTML进行网页界面的设计,使用MVC设计模式,系统采用B/S结构实现,使用ASP.NET实现网站设计。网站将用户分为两类角色,分别为管理员,用户,不同角色的权限不同。网站通过IIS在服务器端配置发布,用户通过浏览器即可对网站内容进行访问。网站中的数据使用MySQL数据库进行保存。关键字:ASP.NET,B/S,MySQL,MVCAbstractOntheinheritanceanddevelopmentofhumancultureinthebookgoestotherole,asGorkysaid,booksarealadderofhumanprogress,withtheexplo
3、sionofknowledge,increasingreaders,librariesappearedsatisfiedthepeoplesdesireforknowledgeonhowefficientmanagementbookisaveryinterestingsubject.Themainfunctionistoachievethebookinformation,bookcirculationfunctions.BookInformationfunctionistoachieveadigitallibrarymanagement,administratorscaneasilyviewb
4、ookinformationquickly;chargingfunction,userscansearchforthisfeaturetochoosewhethertolendbooks;alsowrittenfeature,readerscanseetheirownborrowedbooks,viewtheinformation;administratorcanviewthehistoryofborrowingandreturningbooksandillegalbooksinformation;Viewbooksspecificinformation,administratorscanvi
5、ewdetailedinformationandbooksinthelibrarysstoragestatus.ThissystemusingHTMLforWebinterfacedesign,usingtheMVCdesignpattern,iSystem using B/S structure, using ASP.NET to achieve web design. Web site will be divided into two types of users, respectively, for the administrator, user, different roles of
6、different permissions. Web site through the IIS server configuration is released, the user can access the content of the site through the browser. Site data using the MySQL database to save, user passwords and other sensitive data using Hashed encryption to ensure security. KEY WORDS: ASP.NET,B/S,Sq
7、lServer,MVCAbstractI第1章 绪论11.1 研究背景和意义11.2 国内外现状分析21.3 课题研究的主要内容5第2章 系统分析62.1 系统可行性分析62.1.1技术可行性分析62.1.2 经济可行性分析92.1.3 操作可行性分析92.2 功能需求分析92.3 系统分析102.3.1 总体架构及流程102.3.2 数据库表设计11第3章 图书管理系统平台设计143.1 系统开发环境介绍143.1.1 Visual Studio 2010 143.1.2 MySQL 数据库143.2 系统总体界面的设计143.3 系统各模块的详细设计153.3.1 登录模块153.3.2
8、个人借还书模块153.3.3 管理员操作模块163.3.4 查看借还书记录模块163.3.5 手工录入书籍模块163.3.6 批量录入模块163.3.7 修改库存模块16第4章 C语言在线辅导平台实现164.1 创建ASP.NET Web应用程序174.2 登录功能实现194.3 各模块功能实现234.3.1 学生借还书模块功能实现234.3.2 书籍信息和个人借书记录实现244.3.3 管理员查看学生借还书记录模块实现254.3.4 管理员手工录入书籍模块264.3.5 管理员批量录入书籍模块264.3.6 管理员修改库存模块274.3.7 主页模块284.4 数据库相关类28第5章 综合测
9、试305.1 登录、注册功能测试305.2 各模块功能测试315.2.1 学生主页模块功能测试315.2.2 管理员模块功能测试32第6章 总结与展望356.1 毕业设计总结356.2 系统有待改进之处36致 谢38参考文献392016届计算机专业毕业设计(论文) 第1章 绪论1.1 研究背景和意义近些年来,图书馆的管理已成为一个热门话题,科技的巨大进步已为图书馆在新世纪的发展打下了坚实的基础。全球信息化和科学技术的发展也为图书馆的发展提供了更好的基础,传统的手工服务手段已不能满足学生的需求,自动化科技化的服务手段势在必行。随着社会的发展,信息化社会的建立,图书馆开始冲破传统服务模式和很多高新
10、科技结合起来,紧密地配合社会需求,提供信息化服务,有针对性的服务,不断提高学生的满意率。随着社会大数据时代的到来,作为信息存储的主要媒体之一图书,在很多方面比以往任何时候都大的多,不论是我们自己学校还是社会图书管理系统都需要使用方便而有效的方式来管理自己的书籍。在计算机日益普及的今天,若采用一套高效简单操作的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前那种手工操作已不能满足人们的要求,开发和研究高效管理简单的管理系统是很有必要的。21世纪是一个大数据时代。在各行各业中离不开各种大型数据处理,所以计算机被广泛应用于信息管理系统。计算机的最大好处在于操作简单,智能化高,比传统
11、的人工操作高效简单。使用计算机进行信息处理,不但大大的提高了工作效率,而且提升了系统的安全性。尤其对于复杂的信息管理,计算机越能够发挥它的优势。图书馆作为图书和用户信息的集散地,信息资源和资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。刚开始,他们对信息管理的主要方式手工处理,对于图书借阅情况(如借书天数、借书时间)的统计和核实等往往采用人工操作进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。这样做的话数据信息处理工作量太大,容易出错;而且数据繁多,容易丢失,且易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆
12、有计算机,但是尚未用于信息管理,没有发挥它的效力,资源没有充分利用,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力,如要对很长时间以前的图书进行更改就更加困难了。这就是图书管理系统开发的基本环境。针对这些问题,我认为有必要建立一个智能的图书管理系统,使图书管理工作规范化、系统化、程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。1.2 国内外现状分析我国图书管理系统始于上世纪八十年代,经过了30年的发展,已经取得了不少成就。目前,我国绝大多数图书馆已经把计算机应用进图
13、书管理系统,图书管理系统已经发展到计算机管理的自动化,网络化,数字化操作模式。90年代中期,我国图书馆自动化系统的研发曾经出现了一个高潮时期,当时推出了目前在国内较有影响的几个大型自动化系统(如南京汇文、北邮MELINETS),并提出了“第三代图书馆自动化系统”的概念。在此之后,国内图书馆自动化系统处于相对平淡的一个历史时期,无论在理论上,还是在整体技术实现上,都没有大的突破,有的研究人员甚至认为图书馆自动化系统已经到达了顶点,没有发展的余地。国外自动化系统已经在我们所说的“第三代图书馆自动化系统”的基础之上,在多个方面(如体系结构、移动计算、门户集成)得到了较大的发展。国外图书馆自动化系统的
14、起源可以追溯到1954年,当时,美国海军兵器中心(NOTS)就在IBM701机器上进行了单元词匹配检索。1958年,IBM的研究员卢恩进行了著名的自动抽词试验,开创了自动分类、自动标引、信息检索等多个与图书馆学情报学密切相关的研究领域之先河。图书馆自动化系统的真正发展是在1964年LC发起研制机读目录(MachineReadableCatalog)之后。特别是20世纪70年代,以编目系统为基础的各种自动化系统已经成形,同时还出现了以编目系统为纽带的联机编目协作网,例如OCLC,BALLOTS,RLIN,WLN等;当时的图书馆自动化系统是由大学图书馆或有条件的大型图书馆自主开发的,如东伊利诺斯大
15、学的联机图书流通系统,华盛顿州立大学的图书采购系统等。从20世纪70年代末80年代初,图书馆自动化系统由单一功能性系统转向图书馆集成管理系统,其典型代表是西北大学的NOTIS系统;这期间还出现了专门为图书馆研制计算机管理系统的公司,其中InnovativeInterface.Inc成立于1978年,Sirsi成立于1979年,Dynix(epixtech)成立于1983年,Notis成立于1983年,Exlibris成立于1980年。商品化的图书馆自动化系统的出现,本身就是社会分工的体现,使得图书馆能更进一步地专注于资源建设和服务质量的提高。事实上,从上个世纪八十年代中期开始,发达国家的图书馆
16、基本上不再自己独立研制软件,而是直接购买商品化的软件系统本文希望通过对这些国外图书馆自动化系统的分析,总结国外图书馆自动化系统的主要趋势,一方面为有志于提高国内自动化系统水平的有识之士提供参考;另一方面,也为一些希望引进国外自动化系统的图书馆提供一个当前国外图书馆自动化系统的基本概况。当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相
17、关,系统的开发是系统管理的前提。传统的图书管理模式其最大的特点是手工。首先要把买来的图书资料登记到资料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡片,最后把图书分类卡片按类别分别放置在文件柜里。对于有学生(教师)证的学生(教师)来说还要对他们资料作一定的记录。并且在人们来借书的时候,首先持证件者要去存放图书分类卡片的文件柜里查找想借的书是否在架,如果卡片存在,再按照图书分类卡片在相应的书架上找到需要的图书,然后登记持证件者的借还书时间和在书签条上写下借还书记录,之后把借书证留在那里;还书的时候相对应的消去出借记录;这样做起来比较麻烦比较费时间。传统图书管理的特点是一直以来,中小型
18、书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、会员档案。这种管理方式存在着诸多缺点,如:手续繁琐、工作量大、效率低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。基于上面,有必要建立一个基于MVC的图书馆管理系统。包括一下几点:(1)图书检索模块:是图书管理系统的重要模块之一,帮助读者更快速查询图书的用途和介绍。(2)图书管理模块:是图书管理员操作模块,读者是无权进入的。由录入书籍、图书信息修改和读者借还书记录等模块构成。(3)数据维护模块:是由图书管理员控制的模块,它由对图书一系列操作构成,浏览修改读者、浏览修改图书等程序完成。(4)数据统计
19、模块:由读者统计、图书统计、借还图书分类统计、借还书时间统计等几部分组成。这个系统解决了以前的那种手工操作所存在着的如手续繁琐、工作量大、效率低下、出错率高等缺点,设计出的系统能使读者和管理员都减轻复杂的工序,更具有实用性。1.3 课题研究的主要内容 通过对于“图书管理系统”课题的研究,使自己对ASP.NET、网站建设及MySQL数据库有一个更加深入的了解和认识。课题涉及C#编程,巩固与学习动态网页制作方面的知识。同时此课题与MVC结构,CSS、HTML相关,还用到了部分JavaScript方面的知识,在不断的学习中,逐渐提高自己的知识水平和综合能力。本图书管理系统是在VisualStudio
20、.Net平台上运用ASP.NET技术、SQLServer数据库来实现的。其主要功能有:图书管理,图书信息管理,查询功能等。论文在撰写过程中,最注重将理论与实践应用相结合,将各种理论和系统的实际应用和操作技巧上相结合,希望能够更充分地体现到这些知识与技术在本系统中的应用与实现。网站主要实现的功能有查询、借阅、信息管理,其中信息管理为重点,包括图书信息管理、读者信息管理、管理员信息管理等。通过对信息输入、编辑(增加、删除、查询、修改)等功能完成对图书信息数据库、用户信息数据库的操作管理。第2章 系统分析2.1 系统可行性分析为采用现代化统一的计算机信息网站系统,能够有效优化图书馆管理系统,使其高效
21、的发挥最大作用,能够迅捷的为读者提供相应的服务。开发本系统的可行性研究如下。2.1.1技术可行性分析我们一般认为.NET就是.NETFramework、VisualStudio.NET及开发出的应用(ASP.NET、WinForms等),要说给Microsoft.NET下个准确定义,说实话,这个还挺难为人的。微软自己有一段时间都承认给其对.NET的定义和使用给用户带来了很confused的感觉,后来“.NET”就不在Windows2003Server和其它一些服务器产品中使用了。Microsoft.NET是MicrosoftXMLWebservices平台。XMLWebservices允许应用
22、程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起之所需。对个人用户的好处是无缝的、吸引人的体验。在Microsoft网站上对.NET定义如下:Microsoft.NET是微软公司的一组软件技术,用来连接信息、人、系统和各种设备。它通过使用WebServices技术来获得软件的高度集成。除了将小型的、分散的、构建模块应用互相连接起来,还将Internet上的更大应用连接起来(翻译的可能不是很准确)。第二种定义虽然模糊了许多,但是似乎更贴切一些。两种定义里都把WebSe
23、rvices做为.NET的核心,其基本要素就是智能客户端、服务器、WebServices、开发工具以及一个额外的.NET体验。由此给出我的定义:Microsoft.NET是Microsoft围绕WebServices为核心,为信息、人、系统、各种设备提供无缝连接的一组软件产品(SmartClient、服务器、开发工具)、技术(WebServices)或服务(.NETServices,如.NETPassport)。MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型model,V是指用户界面view,C则是控制器Controler。使用MVC的目
24、的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型视图控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk80发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。MVC如何工作MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被
25、分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。视图视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services.如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式
26、。模型模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。现在我们总结MVC的
27、处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。为什么要使用 MVC大部分Web应用程序都是用像ASP,PHP,或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它给我们带来的好处是无庸质疑的。首先,最重要的一点是多个
28、视图能共享一个模型,正如我所提及的,现在需要用越来越多的方式来访问你的应用程序。对此,其中一个解决之道是使用MVC,无论你的用户想要Flash界面或是 WAP 界面;用一个模型就能处理它们。由于你已经将数据和业务规则从表示层分开,所以你可以最大化的重用你的代码了。由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。例如,很多数据可能用HTML来表示,但是它们也有可能要用Macromedia Flash和WAP来表示。模型也有状态管理和数据持久性处理的功能,例如,基于会话的购物车和电子商务过程也能被Flash网站或者无线联网的应用程序所重用。因为模型是自包含的,并且与控制器和视图相
29、分离,所以很容易改变你的应用程序的数据层和业务规则。如果你想把你的数据库从MySQL移植到Oracle,或者改变你的基于RDBMS数据源到LDAP,只需改变你的模型即可。一旦你正确的实现了模型,不管你的数据来自数据库或是LDAP服务器,视图将会正确的显示它们。由于运用MVC的应用程序的三个部件是相互对立,改变其中一个不会影响其它两个,所以依据这种设计思想你能构造良好的松偶合的构件。对我来说,控制器的也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选
30、择视图将处理结果显示给用户。如图2.1 MVC请求视图展示了MVC请求发起,处理,返回的流程。图2.1 MVC请求视图JavaScript(简称js),是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。在网页里面,js主要有两种实现方式,一是直接在网页中
31、使用 和 ,在标签中间写入js语言, 和 会告诉 JavaScript 在何处开始和结束。二是把脚本保存到外部文件中,外部 JavaScript 文件的文件扩展名是 .js。然后使用引入外部文件,src属性中设置js路径。js的主要特点是:一、js是一种解释性脚本语言(代码不进行预编译);二、主要用来向HTML页面添加交互行为;三、可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。js的主要功能有:(1) 嵌入动态文本于HTML页面(2) 对浏览器事件作出响应(3) 读写HTML元素(4) 在数据被提交到服务器之前验证数据(5) 检测访客的浏览器信息(6) 控制cookie
32、s,包括创建和修改等总之来说,就是要处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等2.1.2 经济可行性分析由于互联网项目的特殊性,无需投入额外的设备购买及人员培训费用,所以在经济上本系统的开发是可行的。此外,系统对开发的需求都不是很高,所以在软硬件的支出上十分有限。因此,本系统在任何一台连接Internet的机器上都是可以运行的,有很高的经济可行性。按上述两方面进行可行性分析、研究后,我们认为该项目在技术上是可行的,在经济上也是没有问题的。 2.1.3 操作可行性分析在操作上对开发人员并不高,Windows 7操作系统我们已经非常熟悉,而且对于Visual Studio
33、 2010在学校的时候已经应用的很熟悉了,选择用C# 语言开发,通过学校的学习后,再通过视频自学,文献书籍自学完全可以自学掌握。 总的来说,图书管理系统系统的开发是符合实际情况的,并具有一定的实用意义。在技术、经济、操作都可以看到该系统的可行性,并且具有其实现的必要性。2.2 功能需求分析利用ASP.NET和C#编程语言,结合MySQL数据库技术,可建立一个图书管理系统。实现如下功能:(1)密码设置:学生和管理员各有各的登录和密码;又因每个人的权限不一致,故可以防止越权操作。(2)资料维护:为了存放图书、借阅记录的全部数据,本系统将每一本图书和借阅记录的信息进行管理。系统维护包括对图书的修改、
34、查询、添加等操作。(3)系统查询:查询借还书记录。(4)图书管理:进行图书管理。(5信息统计:包括统计图书信息、读者信息、借阅信息等。(6)其它操作:包括图书的增删查改等。2.3 系统分析2.3.1 总体架构及流程修改书籍库存批量录入书籍手工录入书籍总体架构如下:查看借书记录管理员图书管理系统查看借书记录借还书学生总体流程:学生 登录 借还书 个人借还书记录 退出管理员 登录 学生借还书记录 录入书籍 修改库存 退出2.3.2 数据库表设计 数据库设计是本系统设计的重点。各个功能模块要从数据库表中写入和读取数据时,在很多情况下不是从单一的一个表中读取,而是通过表的联接,进行多表读取操作。在设计
35、数据库文件时,应充分考虑到整个数据存储的完整性约束(实体完整性、参照完整性)、一致性、安全性、可靠性、便于操作和查询效率的问题。数据库设计人员必须深入实际与用户密切结合,对应用环境、专业业务有具体深入的了解才能设计出符合具体领域要求的数据库应用系统。根据前面的模块功能设计,系统所需要的数据库表应包括“所有图书信息表”,“具体图书信息表”,“借书信息表”,“学生信息表”,各部分各自作为一个表存在。具体设计如下:1. 表名:图书信息表字段名字段类型主键外键备注idint(4)是否namevarchar(45)否否authorvarchar(10)否否priceint(4)否否stockint(4)
36、否否classifyvarchar(10)否否表2.1图书信息表 2.表名:具体图书信息表字段名字段类型主键外键备注idint(4)是否namevarchar(45)否否authorvarchar(10)否否pressvarchar(10)否否pagesint否否introductionvarchar(45)否否priceint(4)否否stockint(4)否否classifyvarchar(10)否否3.表名:借书信息表字段名字段类型主键外键备注br_idint(10)是否book_idvarchar(10)否否book_namevarchar(10)否否datevarchar(10)否否
37、actionvarchar(2)否否stu_namevarchar(10)否否4. 表名:学生信息表字段名字段类型主键外键外键idint(4)是否namevarchar(10)否否pwdvarchar(10)否否第3章 图书管理系统平台设计3.1 系统开发环境介绍3.1.1 Visual Studio 2010 Visual Studio是微软公司推出的开发环境,是目前最流行的Windows平台应用程序开发环境。Microsoft Visual Studio 2010 采用拖曳式便能完成软件的开发。简简单单的操作便可以实现一个界面的生成。但拖曳的界面,也应当有相应的代码来实现功能。Micros
38、oft Visual Studio 2010支持.NET Framework 4.0、C#、C+ 、VB。 可以快速实现相应的功能3。3.1.2 MySQL 数据库数据库选用MySQL,MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,
39、这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。3.2 系统总体界面的设计为了尽可能的减少前台设计的工作量,网站采用母版页进行设计。这样就可以为网站设定统一的风格,并方便的对整站风格进行修改。布局页_Layout.cshtml包括页眉Header.cshtml 页脚Footer.cshtml。页眉中含有学生和管理员登录及退出选项,当用户登录之后将会添加用户的个人中心标签供
40、用户查看自己的个人信息及可操作的提示。3.3 系统各模块的详细设计3.3.1 登录模块 登录模块包括两部分:学生和管理员登录,按照自己身份进行登录,选择相应的操作。3.3.2 个人借还书模块进入学生个人借还书中心,会显示本人已借和未还图书信息,同时也会显示借书时间和还书时间,进行借还书操作。还会显示图书具体信息:书名,分类,作者,库存,价格,同时也可进行借还书操作。还可以查看个人结束记录,显示如下信息:书的编号,书名,借还书时间,是否已还书3.3.3 管理员操作模块管理员操作模块实现的功能包括:查看学生借还书记录,手工录入书籍,批量录入书籍,修改书籍库存,退出3.3.4 查看借还书记录模块显示
41、学生借还书记录和相应的信息:流水号,学生学号,姓名,书的编号,书名,时间和借还书状态3.3.5 手工录入书籍模块管理员对要进行入库的书籍,进行信息填写,保存入库。具体填写数据如下:编号,书名,作者,价格,出版社,页数,库存,简介,种类。然后提交3.3.6 批量录入模块管理员选择要录入的文件(txt或Exel两种格式)进行选择,并且录入。录入前要确认文件中的字段和数据库中图书字段匹配,否则不能录入。3.3.7 修改库存模块管理员进行简单的库存修改,然后保存。第4章 图书管理系统平台实现4.1 创建ASP.NET Web应用程序如果要创建一个ASP.NET MVC3的工程时,首先运行Visual
42、Web Developer 2010 Express(本教程中简称“Visual Web Developer”),并且在起始页(start page)中选择“新建项目”。Visual Web Developer是一个集成开发环境,你可以使用它来进行各种应用程序的开发。在Visual Web Developer的菜单的下面有一个工具条,可以直接点击工具条中的各个工具按钮来进行各种操作,也可以直接点击菜单中的各个菜单项来进行各种操作,此处我们点击“文件”菜单中的“新建项目”菜单项。选择ASP.NET MVC 3 Web Application选项,如图4.1:图4.1 新建工程在接下来打开的“新建
43、项目”对话框中,点击选中“Empty”,在“视图引擎”下拉框中保持默认的“Razor”选项不作修改(Razor视图是ASP.NET MVC3种新增的一种十分重要的视图类型,使用它可以使得Web应用程序的开发变得更加方便快捷,在后文中将对此进行详细介绍)。如下图4.2图4.2 创建Asp.Net点击确定按钮这时候我们就新建了一个空的ASP.NET MVC 3 项目,此时我们可以看到解决方案资源管理器会存在这些文件夹,中除了Connection文件夹是我自己添加的,其余的都是项目自带的文件夹,就像我们知道的一样Controllers文件夹就是MVC中的C-控制器,View文件夹就是MVC中的 V-
44、视图,Models文件夹就是MVC中的M-模块,Content文件夹通常存放一些样式文件夹,如CSS,JS,Image等等,Script文件夹已经放置好的是一些JQuery/JQuery-Ui和Js库文件用大家使用。Global.asax文件存放的是路由规则信息。我们可以在这些文件夹上单机右键来创建我们需要的文件。4.2 登录功能实现在该系统中,登录表是以隐藏域的形式存在于页眉中,当用户点击页眉中的登录按钮时会弹出对应的隐藏域,当用户填写完登录信息点击确定按钮时会通过Ajax将信息发送至服务器。同时通过JavaScript对输入框的输入信息进行格式限制,注册信息如学号,姓名,密码不能为空等等,后台控制器接收到数据之后通过调用底层方法访问数据库对信息进行检索,判断信息有效性等逻辑来确定登录注册成功与否,在登录或注册成功的同时服务器会填写Session信息来记录当前登录成功的用户信息,最终控制器会返回Ajax请求给Client。登录的Ajax代码:public bool GetStuInfoForLogin(int id, string pwd, bool stuormanager) string str = null; if (stuormanager) str = select * from student; else str = select * from manag