基于MVC的图书管理系统.docx
- 文档编号:8565167
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:29
- 大小:92.43KB
基于MVC的图书管理系统.docx
《基于MVC的图书管理系统.docx》由会员分享,可在线阅读,更多相关《基于MVC的图书管理系统.docx(29页珍藏版)》请在冰豆网上搜索。
基于MVC的图书管理系统
摘要
在人类文化的传承与发展中,书籍的作用功不可没,正如高尔基所言,书籍是人类进步的阶梯,随着知识的爆炸,读者日益增多,图书馆的出现满足了人们对知识的渴望,研究怎样高效的管理图书将是一个十分有意义的课题。
通过对图书馆管理系统的运行管理机制进行调查研究,开发了此图书馆管理系统。
本系统中实现了图书管理事务中的常用基本问题以及相关统计工作。
本系统中包含9个功能模块:
首页展示、系统设置、读者管理、图书管理、图书借还、系统查询、更改口令,读者模块、退出系统。
我主要负责图书管理、读者管理、读者模块。
本系统使用jsp进行网页界面的设计,使用MVC设计模式,它采用了当今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。
本系统中通过JDBC驱动和数据库进行无缝连接,后端的数据库SQLServer2008具有较高的完整性、一致性和安全性。
关键词:
图书馆管理SQLServer2008JSPServlet
Abstract
On the inheritance and development of human culture in the book goes to the role, as Gorky said, books are a ladder of human progress, with the explosion of knowledge, increasing readers, libraries appeared satisfied the people's desire for knowledge on how efficient management book is a very interesting subject.
By undertaking studies on operation and management mechanism of library management system, developed this library management system. Implementing library management system commonly used in basic and related statistics. This system contains 9 modules:
Home show management, library management, system settings, reader, book borrowing and returning system query, change password, reader modules, exit the system. I was responsible for library management, user management, user module.
This system using JSP for Web interface design, using the MVC design pattern, it uses today's software has been designed with the latest technology, have high development efficiency, design flexibility, build user friendly appearance and other characteristics of the software. This seamless connectivity through a database and JDBC driver in your system, the back-end database SQL Server2008 have high integrity, consistency, and security.
Key words:
library managementSQL Server2008JSPServlet
第1章绪论
1.1课题现状分析
当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是电脑被广泛应用于信息管理系统的环境。
电脑的最大好处在于利用它能够进行信息管理。
使用电脑进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,电脑能够充分发挥它的优越性。
电脑进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
基于上面,有必要建立一个基于JSP的图书馆管理系统,使图书管理工作标准化,系统化,程序化,防止图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。
1.1.1图书管理的现状
一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆的借书和还书过程,想必大家都已很熟悉。
在电脑尚未在图书管理系统广泛使用之前,借书和还书过程主要依靠手工。
一个最典型的手工处理还书过程就是:
读者将要借的书和借阅证交给工作人员,工作人员将每本书上附带的描述书的信息的卡片和读者的借阅证放在一个小格栏里,并在借阅证和每本书贴的借阅条上填写借阅信息。
这样借书过程就完成了。
还书时,读者将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息,这样还书过程就完成了。
随着近年来信息技术及电脑网络技术的不断发展,图书馆也先从传统的图书馆发展到自动化图书馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来越现代化,人们查找资料也更加方便。
对于一些小图书馆和一些图书室来说,由于工作人员比较少,长期以来,作为图书馆的主要工作—图书借阅一直未能很好地开展。
在平常的图书借阅工作中,由于大部分读者不熟悉图书馆藏书,且对图书排架分类的不了解,往往花费很长时间才能找到其所需的书。
为提高管理效率,更好地为读者
服务,利用已有的办公局域网络条件,将馆藏书籍做成基于JSP的查询系统,实现图书在一个单位的网络内甚至Internet上查询,可使图书查询和借阅变得更加方便快捷,从而使图书室的工作效率得到明显提高。
传统的图书管理模式其最大的特点是手工。
首先要把买来的图书资料登记到资料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡片,最后把图书分类卡片按类别分别放置在文件柜里。
对于有学生〔教师〕证的学生〔教师〕来说还要对他们资料作一定的记录。
并且在人们来借书的时候,首先持证件者要去存放图书分类卡片的文件柜里查找想借的书是否在架,如果卡片存在,再按照图书分类卡片在相应的书架上找到需要的图书,然后登记持证件者的借还书时间和在书签条上写下借还书记录,之后把借书证留在那里;还书的时候相对应的消去出借记录;这样做起来比较麻烦比较费时间。
传统图书管理的特点是一直以来,中小型书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、会员档案。
这种管理方式存在着诸多缺点,如:
手续繁琐、工作量大、效率低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。
1.1.2现有图书馆管理系统现状
在试用了一些个图书管理系统和查阅了大量相关资料文献的基础上,发现那些系统在几个方面已经不符合时代的要求,由于设计人员及其所用的工具的不同,再加上图书管理系统设计的时间也不一样,所用具体场合也有区别,因此在功能上除了图书资料管理所需的基本功能之外也有所不同。
经过比较总结他们都实现了以以下图书馆管理的基本功能:
〔1〕图书检索模块:
是图书管理系统的重要模块之一,是读者快速查询图书的途径。
〔2〕图书管理模块:
是图书管理员操作模块,读者是无权进入的。
由借出图书登记、归还图书登记和续借图书登记子模块构成。
〔3〕数据维护模块:
是由图书管理员控制的模块,它由增加、修改和删除读者,增加、修改删除图书,浏览修改读者、浏览修改图书等程序组成。
〔4〕数据统计模块:
由读者统计、图书统计、借出图书分类统计、到期末归还图书读者统计几部分组成。
这些系统解决了以前的那种管理方式所存在着的诸如手续繁琐、工作量大、效率低下、出错率高等缺点,设计出的系统能使读者快速检索到自己喜爱的书,图书管理员能减轻工作量。
但是鉴于开发工具和开发当时的科技发展水平所限,再加上历史发展到今天,人们的生活环境已经发生了改变,大家对于图书查询这方面的要求也更高。
如在一个局域网内,大家希望能在本台电脑上就能查找自己想要的图书,就需要网络化的联机查询系统。
1.2选题的目的及意义
目的:
随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。
针对中小型图书馆或图书室管理落后的情况,设计实现一个图书信息管理系统,通过与电脑的结合使用对中小型图书馆或图书室的各种图书信息进行管理可以给管理员和用户带来以下不同的方便:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高工作效率,也是图书馆等部门管理科学化、正规化的重要标志之一。
而且电脑管理的成本不断降低。
因此,开发一套这样的中小型图书管理软件已经很有必要,并且实现研究服务于实践的原则。
意义:
图书馆管理系统是一项非常有意义的开发工作,其发展的潜力巨大,现今最好的方法就是使用电脑操作的图书馆管理系统来实现对图书馆的管理,这就为图书馆管理系统提供了市场需要,而图书馆管理系统在现代社会是最热门的行业,国际上在线图书管理系统前景看好,而国内的在线图书,数量上也有了新的增长。
数字图书,各学校的电子图书室等在线图书的出现,证明了在线图书管理系统的前景是好的。
它的建立使图书馆管理摆脱传统摆脱用手工操作,实现通过互连网而进行的远程图书借阅,其发展前景将是非常深远的。
1.3课题研究的主要内容
本次毕业设计能够实现动态站点的开发与维护的技术――JSP。
JSP用于页面显示部分,JDBC用于存取数据库,数据库用于数据存储。
JSP通过对数据库的数据处理,实现图书馆书籍的管理。
本系统主要采用的是B/S结构,由于传统C/S结构存在灵活性差、升级困难、维护工作量大等缺陷,已较难适应当前信息技术与网络技术发展的需要。
随着WEB技术的日益成熟,Browse/Server〔简称B/S〕结构已成为取代Browser/Server〔简称C/S〕结构的一种全新技术。
采用该结构软件的优势在于:
〔1〕无须开发客户端软件,维护和升级方便;〔2〕可跨平台操作,任何一台机器只要装有WWW浏览器软件,均可作为客户机来访问系统;〔3〕具有良好的开放性和可扩充性;〔4〕保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求。
因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件研制中一种流行的体系结构。
在MyEclipse开发环境下,以J2EE为平台,运用JSP网络编程语言和SQLserver数据库完成了B/S模式的图书馆管理系统。
网站主要实现的功能有查询、借阅、信息管理,其中信息管理为重点,包括图书信息管理、读者信息管理、管理员信息管理等。
通过对信息输入、编辑〔增加、删除、查询、修改〕等功能完成对图书信息数据库、用户信息数据库的操作管理。
第2章系统开发工具及相关技术
2.1JSP技术
JavaServerPages技术是一个纯Java平台的技术,它主要用来产生动态网页内容。
在传统的网页HTML文件中加入Java程序片段和JSP标记,就构成了JSP网页。
Web服务器接收到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。
JSP是基于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全、快速和跨平台的动态网页。
JSP在多个方面加速了动态的Web页面的开发:
程序写一次,到处可以运行。
JSP在设计时,充分考虑到应用平台的无关性。
依赖于Java的可移植性,JSP得到目前许多流行操作平台的支持,可在Apache、NetScape、IIS等服务器上执行。
执行速度快。
JSP页面只需编译一次转化为Java字节代码,其后一直驻留于服务器内存中,加快了对JSP页面的响应速度。
假设不考虑JSP页面第一次编译所花的时间,则JSP的响应速度要比ASP快得多。
Java的优势。
JSP技术是用Java语言作为脚本语言的。
跨平台、成熟、健壮、易扩充的Java技术使得开发人员的工作在其他方面也变得容易和简单。
Java语言通过提供防止内存泄漏的方法,在内存管理方面大显身手。
加之,JSP为应用程序提供了更为健壮的意外事件处理机制,充分发挥了Java的优势。
JSP标签可扩充性和跨平台的可重用性。
JSP技术能够使开发者扩展JSP标签得以应用,JSP开发者能定制标签库,大大减少对脚本语言的依赖。
由于定制标签技术,使网页制作者降低了制作网页和向多个网页扩充关键功能的复杂程度。
JSP组件〔企业Javabeans,JavaBeans或定制的JSP标签〕都是跨平台可重用的。
Javabeans和企业Javabeans组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。
2.2jsp开发相关技术
〔1〕JDBC是一组标准的Java语言中的接口和类,使用这些接口和类,Java客户端程序可以访问各种不同类型的数据库。
比方建立数据库连接、执行SQL语句进行数据的存取操作。
JDBC标准采用接口和实现别离的思想设计了Java数据库编程的框架。
接口包含在java.sql及javax.sql包中,其中java.sql属于JavaSE,javax.sql属于JavaEE。
这些接口的实现类叫做数据库驱动程序,由数据库的厂商或其它的厂商或个人提供。
为了使客户端程序独立于特定的数据库驱动程序,JDBC标准建议开发者使用基于接口的编程方式,即尽量使应用仅依赖java.sql及javax.sql中的接口和类。
使用内嵌式的SQL,主要实现三方面的功能:
建立与数据库的连接,执行SQL声明以及处理SQL执行结果。
JDBC支持基本的SQL功能,使用它可方便地与不同的关系型数据库建立连接,进行相关操作,并无需再为不同的DBMS分别编写程序。
〔2〕Servlet
Servlet是一个用Java编写的应用程序,在服务器上运行,处理请求的信息并将其发送到客户端。
Servlet的客户端可以提出请求并获得该请求的响应,它可以使任何Java应用程序、浏览器或任何设备。
对于所有的客户端请求,只需要创建Servlet的实例一次,因此节省了大量的内存。
Servlet在初始化后即驻留内存中,因此每次作出请求时无需加载。
Servlet与Applet相对应,Applet是运行在客户端的浏览器,而Servlet是运行在服务器端的。
JAVAServlets是运行在请求/面向请求服务器上的模块。
也就是说:
servlet能够象CGI脚本一样扩展WEB服务器功能,但是servlet占用很少密集资源,当一个服务器装载servlet时,它运行servlet的init方法.这个方法不能反复调用,一旦调用就是再装载servlet.直到服务器调用destroy方法卸载servlet后才能再调用.每个新的CGI要求在服务器上新增一个进程。
如果多个用户并发地访问该程序,这些进程将消耗该Web服务器所有的可用资源,并且系统性能降低到极其低下的地步。
有很多用CGI脚本编制的一些站点由于访问量剧增,性能迅速下降,这是CGI脚本一个缺点。
同时由于servlet是用java编写的,因此是跨平台的。
〔3〕SQLServer
SQLServer2008是一个功能强大的数据库,它有以下特点:
可信任的——使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。
高效的——使得公司可以降低开发和管理他们的数据基础设施的时间和成本。
智能的——提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。
〔4〕Tomcat
Tomcat服务器是ApacheGroupJakarta小组开发的一个免费服务器软件,适合于嵌入Apache中使用,而且,它的源代码可以免费获得,你可以自由地对它进行扩充。
Tomcat服务器的兼容性很好,如WebLogic服务器采用其为Web服务器引擎,Jbuilder将其作为标准的测试服务器,Sun公司也将其作为JSP技术应用的例如服务器。
但是Tomcat服务器有众多大软件公司的支持,而且服务器的性能稳定,其发展前景很好。
〔5〕MyEclipse
是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
2.3B/S结构
本系统采用B/S模式来实现客户端对服务器端的调用,所谓B/S模式即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式。
在B/S模式中,客户端运行浏览器软件。
浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器,以友好的WEB页面形式显示出来。
如图2.1所示。
图2.1B/S模式图
与传统的C/S模式相比,B/S结构把处理功能全部移植到了服务器端,用户的请求通过浏览器发出,无论是使用和数据库维护上都比传统模式更加经济方便。
而且使维护任务层次化:
管理员负责服务器硬件日常管理和维护,系统维护人员负责后台数据库数据更新维护。
第3章系统分析
3.1可行性分析
采用现代化统一的电脑信息网站系统,能够有效优化图书馆管理系统,使其高效的发挥最大作用,能够迅捷的为读者提供相应的服务。
开发本系统的可行性研究如下。
(1)技术可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。
本系统采用JSP开发出友好美观的人机界面,便于用户理解、操作。
数据库管理系统采用SQLServer,它能够处理大量数据,同时保持数据的完整性、安全性。
因此本系统的开发平台已成熟可行。
硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越廉价,因此硬件平台也能够满足本系统所需。
(2)经济可行性
鉴于电脑技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率,也是图书馆管理发展的必然趋势,其必将有比较宽阔的市场,因此改性统在经济可行性上时可行的。
3.2系统实现的目标
图书管理系统的开发主要实现的目标有以下几个方面:
〔1〕界面设计友好、美观。
〔2〕数据存储安全、可靠。
〔3〕信息分类清晰、准确。
〔4〕强大的查询功能,保证数据查询的灵活性。
〔5〕实现借书、还书、续借。
〔6〕提供图书借阅排行榜,为图书管理员与读者提供真实的数据信息。
〔7〕提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
〔8〕具有易维护性和易操作性。
3.3系统功能分析
〔1〕密码设置:
每个操作员均有自己的密码,可以防止非本系统人员进入本系统;又因每个人的权限不一致,故可以防止越权操作。
〔2〕资料维护:
为了存放图书、读者档案的全部数据,本系统将每一本图书和每位读者的信息进行管理。
系统维护包括对各种表记录的修改、删除、添加等操作。
〔3〕系统查询:
可以按图书编号、作者等相关信息进行查询。
〔4〕系统管理:
进行职工管理、图书和读者管理。
〔5〕报表统计:
包括统计图书信息、读者信息、借阅信息和到期提醒信息等。
〔6〕其它操作:
包括修改个人资料、添加用户等。
3.4开发及运行的环
〔1〕硬件环境
CPU:
一台Pentium4cpu以上的微机及兼容
内存:
512MB以上〔最好1GB内存〕
显示屏:
VGA彩显一台
〔2〕软件环境
操作系统:
Windows2000以上的
数据库:
SQLServer
开发工具包:
JDK
JSP服务器:
Tomcat
浏览器:
IE6.0及以上版本
分辨率:
最正确效果1024像素*768像素
3.5设计模式分析
设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。
本系统开发采用目前一种目前广泛流行的软件设计模式MVC。
MVC〔Model-View–Controller〕应用程序结构被用来分析分布式应用程序的特征。
这种抽象结构能有助于将应用程序分割成假设干逻辑部件,使程序设计变得更加容易。
把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行别离,这样一个应用被分成三个层——模型层、视图层、控制层。
MVC模式的出现,很好的解决了传统开发WEB应用方式中存在的问题。
M代表模型〔Model〕,包含完成任务所需要的所有的行为和数据;V代表视图〔View〕界面,显示模型提供的数据;C代表控制器〔Controller〕,它将模型映射到界面中,处理用户的输入并响应请求。
其模型关系如下图。
在MVC模式中,三层各尽其职、相对独立,各层内部的改变不会影响到其它层,从而降低了数据表达、数据描述和应用操作的耦合度,也能更好的实现开发中的分工,加快工程进度。
第4章系统设计
4.1系统功能设计
4.1.1总体功能设计
在MyEclipse开发环境下,以J2EE为平台,运用JSP网络编程语言和SQLServer数据库完成了B/S模式的图书馆管理系统。
根据图书馆管理系统的实际需求,可以将图书馆管理系统划分为系统设置,读者管理,图书管理,图书借还,系统查询和更改口令6个部分,各个部分的具体功能的系统功能结构图如图4.1所示
4.1.2系统设置模块设计
〔1〕图书馆设置:
包括图书馆名称及相关资料信息的显示。
〔2〕参数设置:
包括办证费,有效期和罚款金额的修改。
〔3〕书架设置:
包括书架名称的添加,查看,修改以及删除功能,各操作添加了JavaScript验证:
添加操作时,如该系统已有该书架,会弹出添加失败警告;删除操作时,假设该系统的书架上还有此图书,执行此操作时会弹出删除失败警告,修改书架时,假设该系统已有此书架,此次操作失败,修改书架成功后,相应图书的书架信息也会随之改变。
〔4〕管理员管理:
包括管理员名称及相关权限的添加,修改和删除。
不同的管理员根据不同的权限执行不同权利。
〔5〕出版社设置:
包括出版社的添加,删除和查看功能。
4.1.3读者管理模块设计
〔1〕读者类型管理:
包括读者类型的添加、修改、查看和删除。
各操作添加了相应的JavaScript验证:
当删除读者类型时,假设已有该类型读者注册了,则此操作失败;当修改读者类型时,只可修改相应读者所借图书数量,读者类型为只读,以防后续程序的混乱;当添加已有读者类型时,添加操作失败。
〔2〕读者档案管理:
包括读者详细信息的查询、修改,删除和读者档案管理,其中读者档案管理包括添加、修改、删除读者信息。
添加及修改操作添加了相应的JavaScript验证:
当添加读者时,添加的读者图书卡编号、邮箱、证件号码及号码不能与已存在的读者信息重复,否则会提示添加失败;当修改读者信息时,读者的和图书卡号是只读,不能修改修改,读者邮箱、证件号码及号码不能与已存在的读者信息重复,否则会提示修改失败。
〔3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MVC 图书 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)