jsp85图书管理系统(jsp+servlet+sqlserver)-qrp_第1页
jsp85图书管理系统(jsp+servlet+sqlserver)-qrp_第2页
jsp85图书管理系统(jsp+servlet+sqlserver)-qrp_第3页
jsp85图书管理系统(jsp+servlet+sqlserver)-qrp_第4页
jsp85图书管理系统(jsp+servlet+sqlserver)-qrp_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE公共图书馆管理系统设计与实现摘要随着信息技术的迅猛发展,传统图书管理方式已跟不上现代化的图书管理方式。为了跟上信息时代的步伐,数字化图书管理系统应运而生。数字化图书管理系统主要用于对图书、读者、以及借阅的管理。它不仅能够简化人们的工作,系统化地对图书和读者进行管理,及时的统计出所有的借书记录;而且还有公告新闻等功能,让读者能够了解到图书馆的最新动态。其用途很广,可以用于各高校的图书馆,企业集团的藏书中心,以及提供借阅业务的大型书店等。系统的开发是基于B/S结构,采用JSP程序设计语言及MYSQL数据库进行开发;主要完成了系统的总体设计与规划、图书数据库的设计、系统页面的制作与美化、系统安全级别的定制和系统程序的编写、调试与修改等工作。本文首先对图书管理系统进行了需求分析;然后较详细的设计和实现了数字图书管理系统的数据库及各功能模块,包括图书检索、图书借阅、公告、留言和后台管理等功能模块;最后,通过测试与分析,说明该系统运行稳定、可靠,具有一定的实用价值。关键词:图书馆;JSP;MYSQL

WiththeimplementationofOncidiumlibrarymanagementsystemdesignAbstractWiththerapiddevelopmentofinformationtechnology,thetraditionallibrarymanagementmethodscouldnothavefollowedthemodernlibrarymanagement.Inordertokeepupwiththepaceoftheinformationage,emergeasthetimesrequiredigitallibrarymanagementsystem.Digitallibrarymanagementsystemismainlyusedforbooks,readers,andlibrarymanagement.Itcannotonlysimplifypeople'swork,systemtomanagethebooksandreadersof,andtimelystatisticsallthelendingrecord;butalsotheannouncementnewsandotherfunctions,sothatreaderscanunderstandthenewesttendencyoflibrary.Itsuseisverybroad,canbeusedforvariousuniversities'library,thecollectioncenterofenterprise,aswellasprovidesborrows'serviceofthelarge-scalebookstore.SystemdevelopmentisbasedonB/Sstructure,usingJSPprogramminglanguageandMYSQLdatabasedevelopment;mainlycompletedthesystemdesignandplanning,thedatabasedesign,systempageproductionandlandscaping,systemsecuritylevelofcustomizationandsystemprogramming,debuggingandmodificationwork.Thispaperhascarriedonthedemandanalysistothebooksmanagementsystemmanagementsystem;andthenthedetaileddesignandRealizationofthedigitallibrarymanagementsystemdatabaseandthefunctionmodule,includingbooks,booklending,announcement,searchingmessageandbackstagemanagementfunctionmodule;finally,throughtestingandanalysis,itshowsthatthesystemisstable,reliable,hasacertaintheutilityvalue.Keywords:library;JSP;MYSQL目录1引言 11.1课题背景及意义 11.2课题的研究与开发目的 11.3本文的主要工作 22图书管理系统的需求分析 32.1系统需求分析 32.2系统流程分析 32.3系统功能分析 43开发工具及相关技术 53.1MacromediaDreamweaver2008简介 53.2MicrosoftSQLServer2005简介 53.3JSP语言及相关技术介绍 53.5SQL语言介绍 64图书馆的总体设计 74.1数据库设计 74.2数据库的E-R图 85图书馆的详细设计 96系统的测试与分析 236.1测试目的与目标 236.2测试方法 236.3测试结论 24结论 25参考文献 26致谢 27 1引言1.1课题背景及意义随着网络技术的迅速发展,无论是企事业单位,还是学校都在借助于网络平台进行信息的管理。当前,随着基于网络学习平台的发展,基于网络的电子书籍给人们的学习带了很多方便,人们可以在网上进行电子书籍阅览、还可以进行图书的借阅,这些都给人们带来了前所未有的便利。因此,基于Web的数字图书馆的设计与开发既有非常重要的现实意义。随着知识经济的到来,“图书”这种可以使人以间接方式快速获取知识的工具已经日益受到重视,海量知识数据以及日益加速的知识更新速度所产生的大量图书信息使图书馆管理系统的广泛使用既是可能的也是必要的,通过对图书信息,读者信息以及借阅信息进行的系统化、标准化信息管理可以大大提高图书馆信息处理的速度与效率。其功能的不断完善与丰富极大地方便了图书管理员的工作展开,是信息产业飞速发展的重要体现之一。作为知识经济的重要载体,数字图书馆是国家信息基础设施重要组成部分,目前已成为评价一个国家信息基础水平的重要标志和本世纪各国文化科技竞争的焦点之一。对于我国来说,数字图书馆的研发起步较晚,因此,建设数字图书馆更加具有必要性和紧迫性。开发这样一个功能较完善的小型数字公共图书馆管理信息系统。既锻炼了学生的实际动手能力,又引导学生进行了一次模拟实际产品的开发,对于学生以后工作能力的培养具有重要的意义。1.2课题的研究与开发目的从用户的实际需求出发,对公共图书馆管理信息系统进行了全面考虑。整个系统的将高可用性放在了第一位,另外,还考虑到系统的运行性能、高可扩充性、开放性、可维护性、用户操作的简易性以及充分保护用户投资等诸多方面的需求。数字图书馆是采用现代高新技术所支持的数字信息资源系统,是下一代因特网上信息资源的管理模式,将从根本上改变目前因特网上信息分散不便使用的现状。通俗地说,数字图书馆是没有时空限制的、便于使用的、超大规模的知识中心。具有较高的可用性、扩展性、便于管理等特点。它解决方案可以包括解决数字资源创建、组织、管理、保存、发布、检索和利用整个过程的各个组件或模块,每一个组件或模块都可以是单独开发的。本系统的开发是采用B/S结构,模拟当今已有的一些公共图书馆管理信息系统进行设计与开发。因此,本次毕业设计应首先分析数字图书系统的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识(包括计算机网络技术、编程技术等相关知识),选择所熟悉的开发工具进行本毕业设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关的设计文挡,为后面的毕业论文的写作准备材料;最后,系统开发完毕后,进行调试和试运行,做好调试和试运行的相关记录,也为后面的毕业论文的写作准备材料。目前市面上的图书馆管理系统层出不穷且各有千秋,但都具有统一的高数据一致性,易操作等特点。其中部分图书馆管理系统使用身份证号,姓名等作为管理借书者基本资料的依据。但这样带来的弊端就是安全性差,在一方的身份证号码泄露的情况下有可能威胁到用户的利益,所以现今更多的图书馆管理系统多以读者的基本资料为依据为用户办理借书卡,并通过用户个人密码的设定保证了顾客的安全性。在国内,目前比较知名的图书馆管理系统有北京创讯未来软件技术有限公司自主研发的北邮图书馆管理系统,英文缩写为MELINETS以及金蝶数码公司的金蝶图书馆管理系统:其专门针对藏书量在10万册以下的中小学、中专及企事业单位小型图书馆的自动化管理需要。附带在线帮助系统和多媒体功效,具有技术先进、功能完备、用户友好、可靠性强、安全性高、适用于多操作系统和经济实用等特点。系统同时支持Client/Server和Internet两种环境,能够适应图书馆自动化、网络化管理的需求。本课题系统的主要目的是让学生能够综合运用以前所学知识(包括以前所学的一些关于网络技术、编程技术等相关知识)的能力,开发一个功能较完善的小型公共图书馆管理信息系统。1.3本文的主要工作公共图书馆管理信息系统的工作主要是为着满足来自两方面的需求,分别是图书借阅者和图书馆管理人员。本文所研究的主要内容也是围绕着这两者的需求来进行的。论文的第1章主要对数据图书馆的开发背景,目的,及意义进行了分析;第2章主要是对公共图书馆管理信息系统进行需求分析,以及对其数据流程与功能进行分析;第3章主要把系统开发工具进行介绍,另外讲解开发系统所用到的一些特殊功能技术;第4章是系统的总体设计,主要讲解了系统各功能模块的设计,以及数据的开发与设计;第5章就是讲解每一个功能的具体实现,第6章是对系统的测试及还存在的不足之处。2图书管理系统的需求分析2.1系统需求分析随着社会发展的日新月异,社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理书籍。图书馆各项工作(如采购、编目等)都要围绕读者服务工作来开展。图书流通的好坏取决于管理工作,在图书流通工作中有大量各种繁杂的手续,如读者登记、预约、各种借还、续借、罚款以及各种统计记录等。这些大量的重复性工作仅仅靠手工流通管理就难以应付,经常出现读者排队的现象。因此,要想充分利用图书资料,掌握图书流通的各种信息.就必须采用新技术。当前,基于网络学习平台的不断发展,就需要一个功能比较完善的数据管理系统,具有数据操作方便、高效、迅速、功能强大等优点。既满足了图书馆工作人员的用自动化代替手工劳动的强烈要求,又满足广大读者以最快的速度查找到所需要的文献资料。从而提高文献的利用率,减低拒借率,并为采购文献提供定量依据,提高藏书质盘。借助于网络平台进行信息的管理,基于网络的电子书籍给人们的学习带了很多方便,人们可以在网上进行图书的借阅,这些都给人们带来了前所未有的便利。借助公共图书馆管理信息系统图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。图书借阅者只应该查询和维护本人的借书情况和个人信息。图书馆管理功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、图书的基本信息;浏览、查询、统计、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,可以为图书借阅者加入借书记录或是还书记录,在删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除;读者留言的管理与维护,维护数据库的完整性(即备份与恢复)。2.2系统流程分析为了促进图书管理的信息化、网络化,采用JSP编写了WEB方式的数字图书管理系统,结合MYSQL数据库来实现。是支持单机、网络、以及多用户的图书管理系统。本系统可直接放于网络服务器上,在任何地方均能实现管理。首先,借阅者前往柜台递交自己的身份信息给图书管理员,经由图书管理员为其办理图书借阅卡,借阅者凭借借阅卡参与后继的图书借阅活动,而系统也以该卡所包含的信息对图书借阅者的信息进行管理。每类图书有对应的可借时间,每种类型的读者也有各自对应的可借图书上限个数,系统根据此类约束为借阅者办理图书的借阅业务,并将借阅信息进行记录。最后,读者归还图书,系统再次记录该读者的借阅信息,若有读者逾期仍未归还图书,则会对其进行对应的罚款惩罚。这套系统提供一个交互式平台,它不仅对图书、读者、图书借阅进行管理,还提供了管理员推荐,以及最新入库的新书一栏,另外还有评论功能,方便与读者的交流。这样就能够更加及时的把读者的意见反馈给管理员,以完善管理体制,为读者提供最好的服务。读者可以在网络上直接进行系统,登录系统后可以查询自己所借阅图书的情况,并且可以在线进行续借操作,更大的提高了工作的效率。即可以减少管理员的工作,也大大地方便了读者。2.3系统功能分析本系统主要权限功能的详细说明如下:管理员具有所有的权限功能包括一般用户的管理,会员管理,图书管理,借阅管理,发布新闻,回复留言的功能。普通管理员可以添加会员,可以对图书进行管理,可以借阅,可以发布新闻,可以回复留言。会员可以进行借阅,查看自己的借阅信息。系统的可靠性分析:在一般图书馆管理系统中,图书借阅者与图书管理员之间交互以达到图书借阅的主要方法流程是:1.借阅者到前台注册办理借书卡;2.借阅者持借书卡到前台申请借书;3.图书管理员查看其有无逾期书籍未归还且未付罚款情况,如有则通知其缴付罚款,合格后查询该书籍是否有货并确定该借阅者借图书数量不超过其可借图书的上限,通过后将图书发给借阅者;4.借阅者在规定时间内阅读书籍后将书籍归还前台;5.图书管理员接收书籍并更新书籍信息与借阅者借阅信息;6.图书管理员对书籍逾期未归还的借阅者发出通知,告知其借阅情况与应缴罚款;综上所述,图书馆管理系统是否可靠,在于该系统能否使图书管理员正常并有序的执行相关图书借阅的校验工作,并保证系统在被使用或运行过程中,不产生任何由系统本身因素所导致的工作异常和错误。2.4系统可行性分析软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,我们开发的这套系统正是考虑为图书在线销售系统的使用者提高工作效率,节省工作时间,方便操作与管理而设计。本系统的开发在经济上是完全可行的。开发此软件不需要大量经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。根据该系统目标来衡量所需的技术是否具备,一般可从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。考虑到系统实施的可行性,在软件方面选择了如今较流行的MyEclipse工具来进行开发管理平台的设计,使用MySQL数据库存储数据。在硬件方面,则选择空间较大,硬件的配置越高,系统的开发与运行会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。在软件方面,由于MyEclipse和MySQL是两个非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。在当今社会,顺着Internet在中国的迅速发展,人们日常生活中越来越多地使用Web技术来为自己的工作和学习服务。许多企业为了扩大他们的规模,将他们的生意范围涉及到了出口生意,由于企业的客户很多,而且分布于各地,甚至还有国外,网上商城购物在线销售图书有着对顾客的地域无限制等诸多的优点,可以成功地解决企业所面临的难题。本图书系统操作简单易行,所以使用前的培训也比较容易,此系统网站的管理人员对开发此应用项目的态度确定而且管理方面的条件都比较成熟。经过以上分析,运行方面是可行的。3开发工具及相关技术根据用户的要求,以及产品实施的特性,系统需要具有界面友好;操作简单;网络化程序高;查询灵活快捷;运行稳定、安全;资源共享率高等特征。本系统是基于windowsxp+tomcat,采用JSP程序编写,以MYSQL作为主体数据库开发而成的。系统开发工具使用MacromediaDreamweaver2008和MYSQL。这两种工具结合适合各类管理系统的快速开发,开发的成品与Windows系列操作系统兼容性较好,而且开发维护费用较低。在讲解系统的主要功能之前,先把此次系统开发所用的工具、环境以及所使用到的相关技术知识介绍一下,方便读者在接下来的系统功能介绍中,对功能的实现有更多的领会。3.1MacromediaDreamweaver2008简介MacromediaDreamweaver2008是一个专业的可视化Web应用程序编辑器。它与以前的版本相比,其功能更加强大,界面更加友好,而且动态网页制作方面的功能更加完善。使用MacromediaDreamweaver2008可以轻松地制作出跨平台和跨浏览器的精美网页。3.2MicrosoftSQLServer2005简介MicrosoftSQLServer2005是一个高性能的客户端/服务器结构的关系数据库管理系统(RDBMS,RelationalDatabaseManagementSystem)。SQLServer2005是为了支持高容量的事务处理(比如在线订购录入、存货目录、记账或制造)以及数据仓库和决策支持系统(比如销售分析应用)而设计的。它运行在MicrosoftWindowsNT4或MicrosoftWindows2005Server上——基于intel处理器的网络。可以把SQLServer2005作为一种个人桌面数据库系统安装在运行WindowNTWorkstation4、Windows2000Professional、Windows98和WindowsMillenniumEdition(Me)的机器上。3.3JSP语言及相关技术介绍SP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支Java,也可以访问JSP网页。JSP全名为javaserverpage,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张(以<%,%>形式)。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP(JavaServerPages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。3.4MVC介绍本系统采用MVC框架,MVC(Model-View-Controller)是一种设计模式,它强制性地把应用程序的输入、处理和输出分开。MVC把应用程序分成3个核心:模型层、视图层和控制层,它们分别担负不同的任务。其中视图层向用户显示相关的数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。模型层表示业务数据和业务逻辑。控制层接收用户输入并调用模型和视图去完成用户的需求。本系统需要用到的Java相关技术有jsp技术、servlet技术、jdbc技术、SSH框架。其中,关键的技术难点在于Struts技术的运用。Struts技术是基于MVC的Web应用框架。在Struts框架中,模型层由实现业务逻辑的JavaBean组件构成,控制层由ActionServlet和Action来实现,视图层由一组JSP文件构成。3.5SQL语言介绍SQL是一个完全标准化的语言。在SQL的发展过程中,国际标准化组织(ISO),美国国际标准居(ANSI)等机构为SQL制定了各种标准。但是对于不同的数据库系统,它们所支持的SQL功能也各有所不同,语法也有差异。SQL已经成为关系型数据库的标准语言。SQL按其功能分主要由以下几部分组成:数据定义语言(DDL):实现定义,删除,和修改数据库对象的功能数据查询语言(DQL):实现查询数据的功能数据操纵语言(DML):实现对数据库数据的增加,删除,修改功能数据控制语言(DCL):实现控制用户对数据库的操作权限的功能其中用得最多的是数据操纵语言(DML)。它包含了最常用的核心SQL语句,即SELECT,INSERT,UPDATE,DELETE。3.6MyEclipse介绍MyEclipse达到了企业工作台水平,是EclipseIDE扩展,用户可以用它来大大提高效率的数据库和JavaEE开发、释放、和应用程序服务器的集成。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse是适合用来开发Java,J2EE的Eclipse插件集合。MyEclipse的功能特别强大,支持面广泛,特别是对各种开放源产品的支持效果很是不错。MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。在结构上,MyEclipse的特征可以被分为7类:1.J2EE模型2.WEB开发工具3.EJB开发工具4.应用程序服务器的连接器5.J2EE项目部署服务6.数据库服务7.MyEclipse整合帮助以上所有功能,在Eclipse中都可以找到对应功能部件。这些功能的实现是利用一系列的插件。MyEclipse的结构上是模块化的,这样可以在不影响其他模块在任何单个模块扩展和升级。简单来说,MyEclipse的是Eclipse插件,J2EE的集成,支持代码编写,配置,测试和调试功能强大的开发环境。[6]4图书馆的总体设计4.1数据库设计数据库简单的说其实就是长期存储的相关数据的集合,但它又不仅是局限于对信息的存储,通过建立数据库,我们可以对数据局更好的管理、存储以及查询,而且更为重要的是,我们还可以实现共享数据。数据库中的数据结构描述了具体事务之间的关系。而描述实体类型和实体之间关系的则称之为数据库模型。数据库系统有一下四种数据模型:层次模型。关系模型、网状模型和面向对象模型。所有的数据库系统都有其特有的数据模型,在本系统中,通过我们对系统数据库的功能特点和适应未来需求的分析,最终选择关系模型作为本系统的数据模型。通常数据库设计有五个步骤:首先是数据库的前期规划,其次是对数据库用户的需求进行分析,然后是对数据库的概念设计,最后则是数据库的逻辑设计和物理设计。数据字典(英文名称DATADICTIONARY简写为DD)是对数据流程图中包含的所有元素的定义的集合,存储了系统所有的数据信息。数据流程图和数据字典共同构成系统逻辑模型。数据流程图是对系统的动态描述。而数据字典是对系统的静态描述,数据字典能够更细致的说明和补充数据流程图的逻辑内容,并且能够供人查阅。数据字典由数据元素、数据流、数据储存以及处理过程组成。根据系统功能设计的要求以及功能模块的划分,对于公共图书馆管理信息系统一共涉及到八个数据表。它们分别是:图书表(book),用户表(admins),图书借阅表(boookbrow),图书类型表(booktype)。下面就介绍一下各表的设计结构及其功能。(1)图书表(book):主要用于存放图书的详细信息。其详细设计结构如表1所示。表1book结构表字段类型中文翻译IdInt主键标示namesnvarchar(50)书名nonvarchar(50)编号typesnvarchar(50)图书类型sjnvarchar(50)书架cbsnvarchar(50)出版社zznvarchar(50)作者jgnvarchar(50)价格numInt数量(2)用户表(users):主要用于存放用户的详细信息。其详细设计结构如表2所示。表2users结构表字段类型中文翻译IdInt主键标示usernamenvarchar(50)用户名passwordnvarchar(50)密码Typesnvarchar(50)角色realnamenvarchar(50)真实姓名telnvarchar(50)电话(3)借阅信息表(brow):主要用于存放用户的详细信息。其详细设计结构如表3所示。表3brow结构表字段类型中文翻译IdInt主键标示bidnvarchar(50)图书iduidnvarchar(50)借阅者idbegintimedatetime开始时间endtimedatetime结束时间statesnvarchar(50)状态(4)留言表(liuyan):主要用于存放留言信息。其详细设计结构如表4所示。表4liuyan结构表字段类型中文翻译IdInt主键标示bidnvarchar(50)图书iduidnvarchar(50)借阅者idbegintimedatetime开始时间endtimedatetime结束时间statesnvarchar(50)状态4.2数据库的E-R图概念设计是数据库实际设计过程中的第一个阶段,是将客观世界进行数字化的一个过程。通常我们在进行数据库设计的时候,首先会将客观世界当中的实际存在的对象进行分类、聚集以及概括步骤,之后将其转换为能够为计算机信息管理系统支持的相关模型,既是产生一个概念数据模型,他不依赖于具体及其而存在,而且他能够真实的、准确的反映客观世界信息情况和相互之间的关系。由于概念模型是独立且不依赖与计算机系统的,因此具有简单明了的特点,应用使该数据看的人员与设计人员方便交流,方便设计人员进一步的进行修改。各类的数据模型都很容易进行转换,能够快捷有效的导出与数据库管理系统相关的逻辑模型。一般来说,描述概念模型的方法有很多种,但是到目前为止,我们最为常用到一种方法就是用E-R图,他是用来描述某一组织的概念模型,既是“实体一联系模型”。所有的数据系统都是根据数据模型而创建的,所以建立数据库的过程中,最为关键的工作就是建立其数据模型,由于客观世界里的具体事务通常都很难将其转换成计算机可以理解的信息,这就要求我们先要将客观世界中的事务转换成可以独立于计算机存在的信息结构,于是就有了概念模型。E-R图能够直观的表示概念模型。所以E-R图尤为重要。E-R图能够形象直观地描述概念模型。E-R模型由四个基本要素构成:实体性用矩形框表示;联系型用菱形框表示;实体型和联系型的属性用椭圆形框表示;用直线将试题类型联系起来,并在直线部标上联系的种类。E-R模型的“联系”用于表述实体之间或者实体内部的联系。根据前期对用户的需求分析,可以对数据结构中任意两个实体间进行考察,判断他们之间是否有直接或间接的关系。如果这两个实体键确实存在某种关联,我们还需要对其之间关联进行判断。此外,我们还要确定两个或多个实体之间和实体内部是不是还存在相互关联。其类型确定之后,还要为其命名以及确定键,并且要防止无关的和多余重复的联系出现的情况。在E-R设计时,我们重点是要明确实体和关系,属性的值以及根据我们的实际情况,有效地划分各个子功能模块的结构范围。数据库的逻辑结构就是把概念模型转换成为某个具体的数据库管理系统所支持的数据模型。

E-R模型向关系模型的转换

1.每一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的关键字就是关系的关键字。

2.联系的转换。

(1)一般1:1,1:m联系不产生新的关系模式,而是将一方实体的关键字加入到多方

实体对应的关系模式中,联系的属性也一并加入。

(2)m:n联系要产生一个新的关系模式,该关系模式由联系涉及实体的关键字加上联系的属性组成。4.3系统分析系统分析是一种解决实际问题的技术,是把一个系统分解为若干个相互独立的部分主要的目的就是研究各个部分是怎么实现其功能的,以及各个部分是如何相互配合实现最终的系统目标的。在整个系统的开发过程中,对系统的需求分析是保障系统顺利开发至关重要的一步,所谓的系统需求分析,就是指在系统开发前对系统制作的目的、所要实现的功能进行总体分析与规划。但总体上,首先我们需要的是了解用户需求,并以此为依据做好系统整体的规划,然后才能逐步对各个模块进行开发并实现其功能。为了实现系统某些具体而又实在的功能,所以对系统模块设计时,首先需要确定系统的功能需求和性能需求,最大程度的掌握用户对系统提出的功能要求和性能要求,在建立系统模型和需求之后,就要确定系统设计的约束,同事我们也要对系统的环境元素也要就行有效分析,最后才能准确的做出系统需求分析。我们所涉及学生公寓管理系统。也是从其从需完成的功能和结构出发进行分析,并提出系统的需求。管理员具有所有的权限功能:包括一般用户的管理,会员管理,图书管理,借阅管理,发布新闻,回复留言的功能。普通管理员可以添加会员,可以对图书进行管理,可以借阅,可以发布新闻,可以回复留言。会员可以进行借阅,查看自己的借阅信息。5图书馆的详细设计系统首页:代码:<%if(types!=null){%><%if(types.equals("管理员")){%><LIid=menu_1onmouseover=Menus.Show(this,0)><Ahref="index/bookmanager.jsp"target='frmright'>图书管理</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="index/bookadd.jsp"target=frmright>图书添加</A></LI><LI><Ahref="<%=path%>/BookServlet?mode=list"target=frmright>图书管理</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><LIid=menu_2onmouseover=Menus.Show(this,0)onclick=getleftbar(this);><Ahref="#">读者管理</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="index/usersadd.jsp"target=frmright>读者添加</A></LI><LI><Ahref="<%=path%>/UsersServlet?mode=list"target=frmright>读者管理</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><LIid=menu_3onmouseover=Menus.Show(this,0)onclick=getleftbar(this);><Ahref="#">借阅管理</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="index/browadd.jsp"target=frmright>借阅添加</A></LI><LI><Ahref="<%=path%>/BrowServlet?mode=list"target=frmright>借阅管理</A></LI><LI><Ahref="<%=path%>/BrowServlet?mode=mylist"target=frmright>我的借阅</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><LIid=menu_10onmouseover=Menus.Show(this,0)onclick=getleftbar(this);><Ahref="<%=path%>/LiuYanServlet?mode=list">在线留言</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="<%=path%>/index/liuyanadd.jsp"target=frmright>留言添加</A></LI><LI><Ahref="<%=path%>/LiuYanServlet?mode=list"target=frmright>留言信息</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><%}else{%><LIid=menu_1onmouseover=Menus.Show(this,0)><Ahref="index/bookmanager.jsp"target='frmright'>图书查看</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="<%=path%>/BookServlet?mode=cklist"target=frmright>图书查看</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><LIid=menu_3onmouseover=Menus.Show(this,0)onclick=getleftbar(this);><Ahref="#">借阅管理</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="<%=path%>/BrowServlet?mode=mylist"target=frmright>我的借阅</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><LIid=menu_10onmouseover=Menus.Show(this,0)onclick=getleftbar(this);><Ahref="<%=path%>/LiuYanServlet?mode=list">在线留言</A><DIVclass=menu_childsonmouseout=Menus.Hide(0);><UL><LI><Ahref="<%=path%>/index/liuyanadd.jsp"target=frmright>留言添加</A></LI><LI><Ahref="<%=path%>/LiuYanServlet?mode=list"target=frmright>留言信息</A></LI></UL></DIV><DIVclass=menu_div><IMGstyle="VERTICAL-ALIGN:bottom"src="images/menu01_right.gif"></DIV></LI><%}%>登入模块:代码:<TBODY><TR><THcolSpan=2height=24>【登入】</TD></TR><TR><TDclass=forumrowwidth="50%"height=24>用户名:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="username"name="username"/></TD></TR><TR><TDclass=forumrowwidth="50%"height=24>密码:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="password"id="password"name="password"/></TD></TR><TR><TDclass=forumrowheight=24>用户类型:<FONTcolor=red><B>×</B></FONT></TD><TDclass=forumrowhighlightheight=24><selectid="types"name="types"><optionvalue="管理员">管理员</option><optionvalue="用户">用户</option></select></TD></TR><TR><TDcolspan="2"class=forumrowhighlightheight=24><center><inputtype="button"value="确定"onclick="add()"/></center></TD></TR></TBODY>图书添加模块:代码:<TBODY><TR><THcolSpan=2height=24>【图书添加】</TD></TR><TR><TDclass=forumrowwidth="50%"height=24>图书条形码:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="no"name="no"/></TD></TR><TR><TDclass=forumrowwidth="50%"height=24>图书名称:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="names"name="names"/></TD></TR><TR><TDclass=forumrowheight=24>图书类型:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="types"name="types"/></TD></TR><TR><TDclass=forumrowheight=24>书架:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="sj"name="sj"/></TD></TR><TR><TDclass=forumrowheight=24>出版社:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="cbs"name="cbs"/></TD></TR><TR><TDclass=forumrowheight=24>作者:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="zz"name="zz"/></TD></TR><TR><TR><TDclass=forumrowheight=24>价格:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="jg"name="jg"/></TD></TR><TR><TDcolspan="2"class=forumrowhighlightheight=24><center><inputtype="button"value="确定"onclick="add()"/></center></TD></TR></TBODY>图书管理模块:代码:<TABLEcellSpacing=1cellPadding=3width="95%"align=centerbgColor=#6ab6b6border=0><TBODY><TR><THcolSpan=2height=24>【图书信息】</TD></TR><TR><TDclass=forumrowwidth="15%"height=24>图书条形码</TD><TDclass=forumrowwidth="15%"height=24>图书名称</TD><TDclass=forumrowwidth="10%"height=24>图书类型</TD><TDclass=forumrowwidth="10%"height=24>书架</TD><TDclass=forumrowwidth="10%"height=24>出版社</TD><TDclass=forumrowwidth="10%"height=24>作者</TD><TDclass=forumrowwidth="10%"height=24>价格</TD><TDclass=forumrowwidth="10%"height=24>借阅次数</TD><TDclass=forumrowwidth="10%"height=24>修改</TD><TDclass=forumrowwidth="10%"height=24>删除</TD></TR><% for(inti=0;i<list.size();i++){ Bookbean=(Book)list.get(i); %> <TR><TDclass=forumrowwidth="15%"height=24><%=bean.getNo()%></TD><TDclass=forumrowwidth="15%"height=24><%=bean.getNames()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getTypes()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getSj()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getCbs()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getZz()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getJg()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getNum()%></TD><TDclass=forumrowwidth="10%"height=24><inputtype="button"value="修改"onclick="modify(<%=bean.getId()%>)"/></TD><TDclass=forumrowwidth="10%"height=24><inputtype="button"value="删除"onclick="deletes(<%=bean.getId()%>)"/></TD></TR> <%}%></TBODY></TABLE>读者添加模块:代码:<TBODY><TR><THcolSpan=2height=24>【读者添加】</TD></TR><TR><TDclass=forumrowwidth="50%"height=24>用户名:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="username"name="username"/></TD></TR><TR><TDclass=forumrowwidth="50%"height=24>密码:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="password"name="password"/></TD></TR><TR><TDclass=forumrowheight=24>用户类型:</TD><TDclass=forumrowhighlightheight=24><selectid="types"name="types"><optionvalue="管理员">管理员</option><optionvalue="用户">用户</option></select></TD></TR><TR><TDclass=forumrowheight=24>真实姓名:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="realname"name="realname"/></TD></TR><TR><TDclass=forumrowheight=24>电话:</TD><TDclass=forumrowhighlightheight=24><inputtype="text"id="tel"name="tel"/></TD></TR><TR><TDcolspan="2"class=forumrowhighlightheight=24><center><inputtype="button"value="确定"onclick="add()"/></center></TD></TR></TBODY>读者管理模块:代码:<TBODY><TR><THcolSpan=2height=24>【读者信息】</TR><TR><TDclass=forumrowwidth="15%"height=24>用户名</TD><TDclass=forumrowwidth="15%"height=24>密码</TD><TDclass=forumrowwidth="10%"height=24>真实姓名</TD><TDclass=forumrowwidth="10%"height=24>角色</TD><TDclass=forumrowwidth="10%"height=24>电话</TD><TDclass=forumrowwidth="10%"height=24>修改</TD><TDclass=forumrowwidth="10%"height=24>删除</TD></TR><% for(inti=0;i<list.size();i++){ Usersbean=(Users)list.get(i); %> <TR><TDclass=forumrowwidth="15%"height=24><%=bean.getUsername()%></TD><TDclass=forumrowwidth="15%"height=24><%=bean.getPassword()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getRealname()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getTypes()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getTel()%></TD><TDclass=forumrowwidth="10%"height=24><inputtype="button"value="修改"onclick="modify(<%=bean.getId()%>)"/></TD><TDclass=forumrowwidth="10%"height=24><inputtype="button"value="删除"onclick="deletes(<%=bean.getId()%>)"/></TD></TR> <%}%></TBODY></TABLE>借阅添加模块:代码:<TABLEcellSpacing=1cellPadding=3width="95%"align=centerbgColor=#6ab6b6border=0><TBODY><TR><THcolSpan=2height=24>【我的借阅】</TD></TR><TR><TDclass=forumrowwidth="6%"height=24>图书条形码</TD><TDclass=forumrowwidth="6%"height=24>图书名称</TD><TDclass=forumrowwidth="6%"height=24>图书类型</TD><TDclass=forumrowwidth="6%"height=24>书架</TD><TDclass=forumrowwidth="6%"height=24>出版社</TD><TDclass=forumrowwidth="6%"height=24>作者</TD><TDclass=forumrowwidth="6%"height=24>价格</TD><TDclass=forumrowwidth="6%"height=24>借阅者</TD><TDclass=forumrowwidth="10%"height=24>开始时间</TD><TDclass=forumrowwidth="10%"height=24>结束时间</TD><TDclass=forumrowwidth="6%"height=24>状态</TD></TR><% for(inti=0;i<list.size();i++){ Browbean=(Brow)list.get(i); Stringstate=bean.getState(); %> <TR><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookno(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookname(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbooktypes(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbooksj(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookcbs(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookzz(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookjg(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getuserrealname(bean.getUid())%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getBegintime()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getEndtime()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getState()%></TD></TR> <%}%></TBODY></TABLE>借阅管理模块:代码:<TBODY><TR><THcolSpan=2height=24>【图书借阅管理】</TD></TR><TR><TDclass=forumrowwidth="6%"height=24>图书条形码</TD><TDclass=forumrowwidth="6%"height=24>图书名称</TD><TDclass=forumrowwidth="6%"height=24>图书类型</TD><TDclass=forumrowwidth="6%"height=24>书架</TD><TDclass=forumrowwidth="6%"height=24>出版社</TD><TDclass=forumrowwidth="6%"height=24>作者</TD><TDclass=forumrowwidth="6%"height=24>价格</TD><TDclass=forumrowwidth="6%"height=24>借阅者</TD><TDclass=forumrowwidth="10%"height=24>开始时间</TD><TDclass=forumrowwidth="10%"height=24>结束时间</TD><TDclass=forumrowwidth="6%"height=24>状态</TD><TDclass=forumrowwidth="6%"height=24>还书</TD></TR><% for(inti=0;i<list.size();i++){ Browbean=(Brow)list.get(i); Stringstate=bean.getState(); %> <TR><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookno(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookname(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbooktypes(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbooksj(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookcbs(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookzz(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getbookjg(bean.getBid())%></TD><TDclass=forumrowwidth="6%"height=24><%=ValueBean.getuserrealname(bean.getUid())%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getBegintime()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getEndtime()%></TD><TDclass=forumrowwidth="10%"height=24><%=bean.getState()%></TD><%if(state.equals("借阅")){ %><TDclass=forumrowwidth="6%"height=24><inputtype="button"value="还书"onclick="modify(<%=bean.getId()%>)"/></TD><%}else{%><TDclass=forumrowwidth="6%"height=24></TD><%}%></TR> <%}%></TBODY></TABLE>在线留言模块:代码:<TBODY><TR><THcolSpan=2height=24>【留言添加】</TD></TR><TR><TDclass=forumrowwidth="50%"height=24>内容:</TD><TDclass=forumrowhighlightwidth="50%"height=24><inputtype="text"id="descs"name="descs"/></TD></TR><TR><TDcolspan="2"class=forumrowhighlightheight=24><center><inputtype="button"value="确定"onclick="add()"/></center></TD></TR></TBODY></TABLE>6系统的测试与分析6.1测试目的与目标系统测试,英文是SystemTesting。是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论