




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计说明书图书馆图书借阅管理系统借书模块的设计与开发学生姓名学号学院专业指导教师2010年6月中北大学2010届毕业设计说明书图书馆图书借阅管理系统借书模块的设计与开发摘要二十一世纪是信息的社会,信息作为社会最主要的资源,将成为战略资源引起人们广泛的关注。如何获取信息图书是我们最好的获取信息的方式,因此图书馆是我们最好的获取信息的场所,所以可以随处见到各种各样的图书馆,但由于图书馆图书收藏量也大增加,使传统的图书馆管理员的工作日益繁重起来。迫使人们起用新的管理方法来管理图书,如何把图书馆管理员从繁重的工作中解脱出来呢科学技术日新月异的进步,让人类生活发生了巨大的变化,计算机技术的飞速发展,使各行各业在计算机技术应用方面得到了广泛的普及和使用。信息化时代的到来成为不可抗拒的潮流,人类文明正在进入一个崭新的时代。因此,图书馆管理系统也以方便、快捷、费用低的优点正慢慢地进入人们的生活,将传统的手工图书管理方式彻底的解脱出来,提高效率,减轻图书馆管理员以往繁忙的工作,减小出错的概率,使会员可以花更多的时间在自己喜欢的书上。从而使会员更好的获取信息、了解信息、掌握信息。图书馆管理系统是典型的信息管理系统MIS,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。因此本人结合开放式书店的要求,对MYSQL数据库管理系统、数据库组件、SQL语言原理、JAVA应用程序设计,对数据库技术进行了较深入的学习和应用,主要完成对图书馆管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。系统运行结果证明,本文所设计的图书馆管理系统可以满足图书馆会员、图书馆管理员双方面的需要。实现了数据库表的浏览,记录的添加、删除和修改,实现了多种条件查询,实现了会员锁定功能等。设计充分利用JAVA、MYSQL数据库技术的强大力量,提高了编程效率和可靠性。关键词J2ME,JAVA,MYSQL数据库技术中北大学2010届毕业设计说明书LIBRARYBORROWINGBOOKSMANAGEMENTSYSTEMDESIGNANDDEVELOPMENTOFTHEMODULEABSTRACTTHETWENTYFIRSTCENTURYINFORMATIONSOCIETY,INFORMATIONSOCIETY,THEMOSTIMPORTANTRESOURCESWILLBECOMEASTRATEGICRESOURCEFORAWIDERANGEOFCONCERNSRAISEDHOWTOOBTAINTHEINFORMATIONBOOKSAREOURBESTWAYTOOBTAININFORMATION,SOBOOKSAREOURBESTACCESSTOINFORMATIONSITES,SOITCANBEEVERYWHERETOSEEAVARIETYOFPUBLISHINGHOUSE,BUTTHEPUBLISHINGHOUSEHASLARGECOLLECTIONOFBOOKSINCREASED,THEADMINISTRATOROFTHETRADITIONALPUBLISHINGHOUSEWITHTHEINCREASINGWORKLOADFORCEDPEOPLETOUSENEWMANAGEMENTMETHODSTOMANAGETHEBOOKS,HOWTHEPUBLISHINGHOUSEFROMTHEHEAVYWORKOFTHEADMINISTRATOROUTOFITTHEPROGRESSOFSCIENCEANDTECHNOLOGYSOTHATHUMANLIFEHASCHANGEDDRAMATICALLY,THERAPIDDEVELOPMENTOFCOMPUTERTECHNOLOGYANDTHEINDUSTRIESINTHEAPPLICATIONOFCOMPUTERTECHNOLOGYHASBEENWIDELYPOPULARITYANDUSETHEARRIVALOFTHEINFORMATIONAGEHASBECOMEANIRRESISTIBLETRENDOFHUMANCIVILIZATIONISENTERINGANEWERATHEREFORE,THEPUBLISHINGHOUSEMANAGEMENTSYSTEMISALSOCONVENIENT,FAST,LOWCOSTADVANTAGEOFBEINGSLOWTOENTERPEOPLESLIVES,THETRADITIONALLIBRARYMANAGEMENTMANUALOUTCOMPLETELY,IMPROVEEFFICIENCY,REDUCEPUBLISHINGHOUSEADMINISTRATORSBUSYWORKINGTHEPAST,REDUCINGTHETHEPROBABILITYOFERROR,SOTHATMEMBERSCANSPENDMORETIMEINYOURFAVORITEBOOKSOTHATTHEMEMBERSBETTERACCESSTOINFORMATION,UNDERSTANDINGINFORMATION,ACCESSTOINFORMATIONMANAGEMENTSYSTEMFORPUBLISHINGHOUSEISATYPICALMANAGEMENTINFORMATIONSYSTEMMIS,INCLUDINGTHEDEVELOPMENTOFTHEMAINBACKGROUNDOFTHEESTABLISHMENTANDMAINTENANCEOFDATABASEANDAPPLICATIONDEVELOPMENTFRONTENDASPECTSFORTHEFORMERREQUIREMENTTOESTABLISHDATACONSISTENCYANDINTEGRITY,ANDDATASECURITYOFAGOODLIBRARYFORAPPLICATIONSWHICHREQUIREFULLFEATUREDANDEASYTOUSEANDSOONSOICOMBINEDTHEREQUIREMENTSOFANOPENBOOKONTHEMYSQLDATABASEMANAGEMENTSYSTEM,DATABASECOMPONENTS,SQLLANGUAGEPRINCIPLE,JAVAAPPLICATIONPROGRAMMING,DATABASETECHNOLOGYFORMOREINDEPTHSTUDYANDAPPLICATION,MAINLYTOCOMPLETETHEMANAGEMENT中北大学2010届毕业设计说明书SYSTEMNEEDSPUBLISHINGHOUSEANALYSIS,DIVIDEDINTOFUNCTIONALMODULES,DATABASES,PATTERNANALYSIS,ANDTHUSTHEDESIGNOFTHEDATABASESTRUCTUREANDAPPLICATIONSSYSTEMRESULTSSHOWTHAT,INTHISPAPERMANAGEMENTSYSTEMDESIGNEDTOMEETTHEPUBLISHINGHOUSEPUBLISHINGHOUSEMEMBERS,ADMINISTRATORSPUBLISHINGHOUSENEEDSATWOWAYSTREETTHEREALIZATIONOFADATABASETABLEBROWSING,ADDRECORD,DELETE,ANDMODIFY,THECONDITIONSTOACHIEVEAVARIETYOFINQUIRIES,AMEMBERFUNCTIONLOCKDESIGNTAKEFULLADVANTAGEOFJAVA,MYSQLDATABASETECHNOLOGYAPOWERFULFORCETOIMPROVETHEEFFICIENCYANDRELIABILITYOFTHEPROGRAMMINGKEYWORDSJ2ME,JAVA,MYSQLDATABASETECHNOLOGY中北大学2010届毕业设计说明书第I页共III页目录1绪论111研究背景与研究意义1111研究背景1112研究意义112系统调研与可行性分析1121现状调研1122可行性分析22系统开发技术介绍321JAVA技术3211JAVA简介3212JDBC定义322MVC技术4221MVC模型介绍5222MVC设计模式的实现6223MVC设计模式的优点623MYSQL概述724SQL介绍8241SQL基础8242SQL语句925开发环境10251ECLIPSE10252ECLIPSEME103系统需求分析1131系统功能分析11311功能需求11312性能需求11313运行需求1232数据需求12中北大学2010届毕业设计说明书第II页共III页321静态数据12322动态数据124数据库设计1341数据库系统13411数据库13412数据采集1342数据处理流程13421系统登陆流程13422主流程13423借书流程13424还书流程14425续借流程14426图书管理操作流程14427会员管理操作流程1443系统数据库设计14432数据库表155系统实现1751系统总体结构设计1752系统模块实现17521系统登录模块实现17522系统管理模块实现22523借书模块实现25524还书模块设计31525会员管理模块实现31526续借模块实现32527图书管理模块实现33528管理员更改密码模块实现336软件概述357毕业设计总结36中北大学2010届毕业设计说明书第III页共III页参考文献37致谢38中北大学2010届毕业设计说明书第1页共38页1绪论11研究背景与研究意义111研究背景本图书管理系统是针对学校的图书馆日常操作业务而开发的管理软件。根据书店管理员、会员借阅的需求,实现图书、读者之间的有序化,信息化管理。本系统主要由这几个模块组成日常借阅操作、读者管理、图书管理、系统设置等。图书管理系统通过录入图书的详细资料,建立读者档案、系统用户资料,设置各类参数(如超期期限、读者类别、图书类别等等),找出图书与读者之间的对应关系,实现日常的借阅操作。基于得到的这些基础数据,系统自行生成相应的统计数据以供管理员查询、分析;另外,管理员还可以对这些基本信息进行定期的数据更新和数据库维护;为读者借阅时提供图书是否在馆,以及自己借书、还书等情况的查询功能,图书管理系统力求给图书管理员提供操作简单、方便快捷的途径去管理这些庞大,繁琐的信息和图书。112研究意义随着计算机应用在全球范围内日益普及,当今社会正快速向信息化、电脑化社会前进,信息自动化的作用也越来越大。从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。鉴于目前某些图书馆的借阅工作还是手工管理,工作效率很低,并且不能及时了解会员们的需求的图书等,不能更好的适应当前会员的借阅要求。手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时快捷,因此我们利用计算机提供给我们的信息对会员们的借阅过程形成一整套动态的管理。12系统调研与可行性分析121现状调研一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆的借书和还书过程,想必大家都已很熟悉。在计算机尚未在图书馆广泛使用之前,借书和还书过程主要依靠手工。一个最典型的手工处理还书过程就是读者将要借的书和借阅证交给图书馆老板,图书馆老板将每本书上附带的描述书的信息的卡片和读者中北大学2010届毕业设计说明书第2页共38页的借阅证放在一个小格栏里,并在借阅证和每本书贴的借阅条上填写借阅信息。这样借书过程就完成了。还书时,读者将要还的书交给图书馆老板,图书馆老板根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息,还书过程就完成了。以上所描述的手工过程的不足之处显而易见,首先处理借书、还书业务流程的效率很低,其次处理能力比较低,一段时间内,所能服务的读者人数是有限的。本系统正是基于改变这种现状的一个尝试,用MYSQL数据库实现,用JAVA语言开发,界面友好,操作简单,利用本系统来处理这些流程无疑会极大程度地提高效率和处理能力。我们将会看到排队等候借书、还书的队伍不再那么长,图书馆管理员出错的概率也小了,读者可以花更多的时间在选择书和看书上。122可行性分析本次毕业设计题目“图书馆管理系统”主要目的是利用数据库软件编制一个管理软件,用以实现图书馆管理员对图书多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书馆管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、会员的管理,其实是对图书、会员数据的管理。本系统的建成无疑会为图书馆管理员提供极大的帮助。本系统的设计主要从以下几方面做起系统业务流程分析、系统的功能设计、系统的数据库结构设计、系统输入/输出设计等。作这些工作需对数据库知识有足够认识,并深入的了解ECLIPSE32的使用和管理系统的相关知识。在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应用之一的数据处理,已迅速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。中北大学2010届毕业设计说明书第3页共38页2系统开发技术介绍21JAVA技术211JAVA简介JAVA是由SUNMICROSYSTEMS公司于1995年5月推出的JAVA程序设计语言(以下简称JAVA语言)和JAVA平台的总称。用JAVA实现的HOTJAVA浏览器(支持JAVAAPPLET)显示了JAVA的魅力跨平台、动态的WEB、INTERNET计算。从此,JAVA被广泛接受并推动了WEB的迅速发展,常用的浏览器现在均支持JAVAAPPLET。另一方面,JAVA技术也不断更新。JAVA平台由JAVA虚拟机(JAVAVIRTUALMACHINE)和JAVA应用编程接(APPLICATIONPROGRAMMINGINTERFACE、简称API)构成。JAVA应用编程接口为JAVA应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个JAVA平台之后,JAVA应用程序就可运行。现在JAVA平台已经嵌入了几乎所有的操作系统。这样JAVA程序可以只编译一次,就可以在各种系统中运行。JAVA应用编程接口已经从11X版发展到12版。目前常用的JAVA平台基于JAVA14,最近版本为JAVA17。JAVA分为三个体系JAVASEJAVA2PLATFORMSTANDARDEDITION,JAVA平台标准版,JAVAEEJAVA2PLATFORM,ENTERPRISEEDITION,JAVA平台企业版,JAVAMEJAVA2PLATFORMMICROEDITION,JAVA平台微型版。212JDBC定义JDBC(JAVADATABASECONNECTIVITY,JAVA数据库连接)是一种用于执行SQL语句的JAVAAPI,可以为多种关系数据库提供统一访问,它由一组用JAVA语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JAVAAPI编写数据库应用程序,同时,JDBC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问SYBASE数据库专门写一个程序,为访问ORACLE数据库又专门写一个程序,或为访问INFORMIX数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送中北大学2010届毕业设计说明书第4页共38页SQL调用。同时,将JAVA语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是JAVA语言“编写一次,处处运行”的优势。JAVA数据库连接体系结构是用于JAVA应用程序连接数据库的标准方法。JDBC对JAVA程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。JAVA具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是JAVA应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作为此种用途的机制。JDBC扩展了JAVA的功能。例如,用JAVA和JDBCAPI可以发布含有APPLET的网页,而该APPLET使用的信息可能来自远程数据库。企业也可以用JDBC通过INTRANET将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有WINDOWS、MACINTOSH和UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用JAVA编程语言,对从JAVA中便捷地访问数据库的要求也在日益增加。MIS管理员们都喜欢JAVA和JDBC的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,JAVA和JDBC可为外部客户提供获取信息更新的更好方法。22MVC技术MVC三层架构也称MVC模式,主要是将程序开发分为MODEL层(数据持久层)、VIEW(界面表示层)、CONTROL层(控制层)这三个层面,并将这三个层面分开来,形成了一个立体的架构。三个层次之间的主要交互如下所示中北大学2010届毕业设计说明书第5页共38页VIEW层CONTROL层MODEL层图21MVC模式221MVC模型介绍MVC英文即MODELVIEWCONTROLLER,即把一个应用的输入、处理、输出流程按照MODEL、VIEW、CONTROLLER的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。(1)视图VIEW代表用户交互界面,对于WEB应用来说,可以概括为HTML界面,但有可能为XHTML、XML和APPLET。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型MODEL处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。(2)模型MODEL就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所中北大学2010届毕业设计说明书第6页共38页有有关数据库的操作只限制在该模型中。(3)控制CONTROLLER可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。222MVC设计模式的实现(1)视图是模型的表示,它提供用户交互界面。使用多个包含单显示页面的用户部件,复杂的WEB页面可以展示来自多个数据源的内容,并且网页人员,美工能独自参与这些WEB页面的开发和维护。(2)为了能够控制和协调每个用户跨越多个请求的处理,控制机制应该以集中的方式进行管理。应用程序的控制器集中从客户端接收请求,决定执行什么商业逻辑功能,然后将产生下一步用户界面的责任委派给一个适当的视图组件。用控制器提供一个控制和处理请求的集中入口点,它负责接收、截取并处理用户请求;并将请求委托给分发者类,根据当前状态和业务操作的结果决定向客户呈现的视图。(3)模型。MVC系统中的模型从概念上可以分为两类系统的内部状态和改变系统状态的动作。模型是你所有的商业逻辑代码片段所在。业务处理对象封装了具体的处理逻辑,调用业务逻辑模型,并且把响应提交到合适的视图组件以产生响应。业务实体对象可以通过定义属性描述客户端表单数据。通过业务实体对象实现了对视图和模型之间交互的支持。实现时把“做什么“(业务处理)和“如何做“(业务实体)分离。这样可以实现业务逻辑的重用。223MVC设计模式的优点首先,最重要的是应该有多个视图对应一个模型的能力。在目前用户需求的快速变化下,可能有多种方式访问应用的要求。例如,订单模型可能有本系统的订单,也有网上订单,或者其他系统的订单,但对于订单的处理都是一样,也就是说订单的处理是一致的。按MVC设计模式,一个订单模型以及多个视图即可解决问题。这样减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护。中北大学2010届毕业设计说明书第7页共38页其次,由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用。再次,由于一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动MVC的模型层。控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说是包含了用户请求权限的概念。最后,它还有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。23MYSQL概述MYSQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与APACHE和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。MYSQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MYSQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序MYSQLD和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MYSQL也足够快和灵活以允许你存储记录文件和图像。MYSQL主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MYSQL就开发出来。自1996年以来,我们一直都在使用MYSQL,其环境有超过40个数据库,包含10,000个表,其中500多个表超过7百万行,这大约有100个吉字节GB的关键应用数据。MYSQL建立的基础是业已用在高要求的生产环境多年的一套实用例程。尽管MYSQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。中北大学2010届毕业设计说明书第8页共38页24SQL介绍241SQL基础SQLSTRUCTUREDQUERYLANGUAGE,结构查询语言是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有ORACLE、SYBASE、MICROSOFTSQLSERVER、ACCESS、MYSQL等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如“SELECT“、“INSERT“、“UPDATE“、“DELETE“、“CREATE“和“DROP“常常被用于完成绝大多数数据库的操作。MSSQLSERVER就是用的TRANSACTSQL。SQL语言有着非常突出的优点,主要是N非过程化语言N统一的语言N是所有关系数据库的公共语言非过程化语言SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法,这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。统一的语言SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其它类型的终端用户。SQL为许多任务提供了命令,其中包括N查询数据N在表中插入、修改和删除记录N建立、修改和删除数据对象中北大学2010届毕业设计说明书第9页共38页N控制对数据和数据对象的存取N保证数据库一致性和完整性以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。所有关系数据库的公共语言由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS关系数据库管理系统转到另一个,所有用SQL编写的程序都是可以移植的。242SQL语句SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组DML(DATAMANIPULATIONLANGUAGE,数据操作语言)用于检索或者修改数据;DDL(DATADEFINITIONLANGUAGE,数据定义语言)用于定义数据的结构,比如创建、修改或者删除数据库对象;DCL(DATACONTROLLANGUAGE,数据控制语言)用于定义数据库用户的权限。DML组可以细分为以下的几个语句SELECT用于检索数据;INSERT用于增加数据到数据库;INSERT标准语法INSERTINTOTABLE_NAMECOL1,COL2VALUESVALUE1,VALUE2UPDATE用于从数据库中修改现存的数据;UPDATETABLE_NAMESETCOLUMNNAME1VALUE1,COLUMNAME2VALUE2DELETE用于从数据库中删除数据。DELETE语句标准语法DELETEFROMTABLENAMEWHERECONDITIONDDL语句可以用于创建用户和重建数据库对象。下面是DDL命令CREATETABLE,ALTERTABLE,DROPTABLE,CREATEINDEX,DROPINDEX中北大学2010届毕业设计说明书第10页共38页25开发环境本作品的开发平台为ECLIPSE32JDK16。251ECLIPSEECLIPSE是替代IBMVISUALAGEFORJAVA(以下简称IVJ)的下一代IDE开发环境,但它未来的目标不仅仅是成为专门开发JAVA程序的IDE环境,根据ECLIPSE的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。更难能可贵的是ECLIPSE是一个开放源代码的项目,任何人都可以下载ECLIPSE的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在ECLIPSE之上的COBOL,PERL,PYTHON等语言的开发插件出现。同时可以通过开发新的插件扩展现有插件的功能,比如在现有的JAVA开发环境中加入TOMCAT服务器插件。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是ECLIPSE的潜力所在。在本项目中,ECLIPSE正是通过第三方插件ECLIPSEME实现了开发J2ME应用。252ECLIPSEMEECLIPSEME是帮助你开发J2MEMIDLET的ECLIPSE插件。ECLIPSEME帮助你轻松的把无线工具包整合到ECLIPSE开发环境中,使你不必再担心J2ME开发有何特殊需求,而可以把所有精力集中在应用开发上。中北大学2010届毕业设计说明书第11页共38页3系统需求分析31系统功能分析311功能需求功能划分查询功能;插入功能;修改功能;删除功能;浏览功能;授权功能。功能描述1查询功能按照图书相应属性查询;按照读者相应属性查询;书目和读者相关匹配查询;2插入功能增加一个图书记录;增加一个会员记录;3修改功能修改某一已存在的记录内容;4删除功能删除一个记录;5浏览功能;管理员浏览图书信息和会员信息;312性能需求数据精确度查询时应保证查全率,所有在相应域中包含查询关键字的记录都应能查到,同时保证查准率。中北大学2010届毕业设计说明书第12页共38页时间特性一般操作的响应时间应在12秒内。适应性满足运行环境在允许操作系统之间的安全转换和与其它应用软件的独立运行要求。313运行需求用户界面窗体和对话框。硬件接口支持各种X86系列PC机。软件接口运行于WINDOWS95/98及更高版本具有WIN32API的操作系统之上。故障处理正常使用时不应出错,对于用户的输入错误应给出适当的改正提示。若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。32数据需求321静态数据书社管理系统的静态数据包括图书书编号,书名,书类型,作者,库存量,出版社,价格,简介,入库时间;管理员用户名,密码;会员会员号,电话,姓名,性别,地址,余额,注册时间,借书数量,状态;借还访问记录书编号,会员号,借书时间,书状态,续借状态,借书期限;322动态数据输入数据查询方式、查询关键字;登记新图书、新会员;图书、会员情况的更改;借阅、返还时的图书编号、会员卡号;输出数据查询出的记录集。中北大学2010届毕业设计说明书第13页共38页4数据库设计41数据库系统411数据库采用MYSQL数据库。412数据采集数据采集采用键盘输入。42数据处理流程421系统登陆流程1)要求管理员输入用户名及密码。2)建立与数据库的连接。3)权限检验。4)根据操作权限显示主对话框(即主界面),进入主流程。422主流程1等待管理员输入。如为图书管理操作进入图书管理操作流程。如为会员管理操作进入会员管理操作流程。如为借书进入借书流程(显示借书对话框)。如为还书进入还书流程(显示还书对话框)。如为续借进入续借流程(显示续借对话框)。如为退出检查所有子窗口,关闭对话框,断开与数据库的连接,结束主流程。423借书流程1要求管理员输入书编号,会员号。2检验书编号和会员号是否存在。3确认存在后提交借书请求,更新信息,把借书信息写入数据库,显示借书操作结果。4如为完成借书操作结束借书流程。中北大学2010届毕业设计说明书第14页共38页424还书流程1要求管理员输入书编号,会员号。2检验借书信息是否存在。3确认存在后提交还书请求,更新信息,把还书信息写入数据库,显示还书操作结果。4如为完成还书操作结束还书流程。425续借流程1要求管理员输入书编号,会员号。2检验借书信息是否存在。3确认存在后提交续借请求,更新信息,把续借信息写入数据库,显示续借操作结果。4如为完成续借操作,结束续借流程。426图书管理操作流程1管理员可以对图书信息进行增删改查操作。2确认提交后,更新信息,写入数据库,显示操作结果。3完成操作后,结束图书管理操作流程。427会员管理操作流程1管理员可以对会员信息进行增删改查操作。2确认提交后,更新信息,写入数据库,显示操作结果。3完成操作后,结束会员管理操作流程。43系统数据库设计中北大学2010届毕业设计说明书第15页共38页图41系统数据库关系432数据库表表41数据库列表会员表USERS字段数据类型备注UIDINT会员号UNAMEVARCHAR20姓名USEXCHAR2性别UPHONEVARCHAR25电话UADDRESSVARCHAR30地址UMONEYDOUBLE卡内余额UREGTIMEDATETIME注册时间UAMOUNTINT借书数量USTATECHAR2会员卡的状态管理员表ADMIN字段数据类型备注ANAMEVARCHAR20用户名APWDVARCHAR20密码中北大学2010届毕业设计说明书第16页共38页图书表BOOKS字段数据类型备注BIDINT书编号BNAMEVARCHAR20书名BPREVIEWVARCHAR50书的简介BSORTVARCHAR15类别BPUBLISHERVARCHAR15出版社BSUMINT库存量BPRICEDOUBLE书价BAUTHORVARCHAR20作者BREGTIMEDATETIME入库时间借书还书表OUTBOOKS字段数据类型备注OBIDINT书编号OUIDINT会员号OBOTIMEDATETIME借书时间OBRENTTIMEINT借书期限OBSTATECHAR2书归还的状态OBKEEPCHAR2是否续借中北大学2010届毕业设计说明书第17页共38页5系统实现51系统总体结构设计软件总体结构图51总体结构设计图52系统模块实现521系统登录模块实现功能检验输入的管理员账号以及密码是否正确。输入项目管理员用户名和密码。输出项目主界面。图52主界面主界面会员管理续借图书管理退出数据库连接借书还书系统管理系统登陆关于还书信息借书信息中北大学2010届毕业设计说明书第18页共38页程序逻辑图53系统登录程序设计图图54用户登录界面PUBLICCLASSUSERLOGINEXTENDSJFRAMEIMPLEMENTSACTIONLISTENERDATABASEMANAGERDBNEWDATABASEMANAGERMAINWINDOWMAINFRAMEJPANELPANEL1,PANEL2JLABELUSERLABEL,PASSWORDLABELJTEXTFIELDUSERTEXTFIELD系统登陆界面输入管理员用户名和密码进入主界面错误信息密码正确密码错误中北大学2010届毕业设计说明书第19页共38页JPASSWORDFIELDPASSWORDTEXTFIELDJBUTTONYESBTN,CANCELBTNCONTAINERCRESULTSETRSPUBLICUSERLOGINMAINWINDOWMAINFRAMESUPER“用户登录“THISMAINFRAMEMAINFRAMEUSERLABELNEWJLABEL“用户名“,JLABELCENTERPASSWORDLABELNEWJLABEL“密码“,JLABELCENTERUSERTEXTFIELDNEWJTEXTFIELD10PASSWORDTEXTFIELDNEWJPASSWORDFIELD10YESBTNNEWJBUTTON“确定“CANCELBTNNEWJBUTTON“取消“YESBTNADDACTIONLISTENERTHISCANCELBTNADDACTIONLISTENERTHISPANEL1NEWJPANELPANEL1SETLAYOUTNEWGRIDLAYOUT2,2PANEL2NEWJPANELCGETCONTENTPANECSETLAYOUTNEWBORDERLAYOUTPANEL1ADDUSERLABELPANEL1ADDUSERTEXTFIELDPANEL1ADDPASSWORDLABELPANEL1ADDPASSWORDTEXTFIELDCADDPANEL1,BORDERLAYOUTCENTERPANEL2ADDYESBTNPANEL2ADDCANCELBTNCADDPANEL2,BORDERLAYOUTSOUTH中北大学2010届毕业设计说明书第20页共38页SETSIZE300,300PUBLICVOIDACTIONPERFORMEDACTIONEVENTEIFEGETSOURCECANCELBTNMAINFRAMESETENABLE“ELSE“THISDISPOSEELSECHARPASSWORDPASSWORDTEXTFIELDGETPASSWORDSTRINGPASSWORDSTRNEWSTRINGPASSWORDIFUSERTEXTFIELDGETTEXTTRIMEQUALS“SYSTEMOUTPRINTLN“AAAAAAAAAAAAAAAAAAAAA“JOPTIONPANESHOWMESSAGEDIALOGNULL,“用户名不可为空“RETURNIFPASSWORDSTREQUALS“SYSTEMOUTPRINTLN“BBBBBBBBBBBBBBBBB“JOPTIONPANESHOWMESSAGEDIALOGNULL,“密码不可为空“RETURNSTRINGSTRSQLSTRSQL“SELECTFROMUSERTABLEWHEREUSERNAME“USERTEXTFIELDGETTEXTTRIM“ANDPASSWORD“PASSWORDSTR“中北大学2010届毕业设计说明书第21页共38页SYSTEMOUTPRINTLNSTRSQLRSDBGETRESULTSTRSQLBOOLEANISEXISTFALSETRYSYSTEMOUTPRINTLN“BBBBBBBBBBBBBBBBB“ISEXISTISEXISTRSFIRSTCATCHSQLEXCEPTIONSQLESYSTEMOUTPRINTLNSQLETOSTRINGIFISEXISTJOPTIONPANESHOWMESSAGEDIALOGNULL,“用户名不存在或者密码不正确“MAINFRAMESETENABLE“ELSE“ELSESYSTEMOUTPRINTLN“BBBBBBBBBBBBBBBBB“ISEXIST“存在“TRYSYSTEMOUTPRINTLN“BBBBBBBBBBBBBBBBB“RSGETSTRING“POWER“TRIMRSFIRSTMAINFRAMESETENABLERSGETSTRING“POWER“TRIMDBCLOSECONNECTIONTHISDISPOSE中北大学2010届毕业设计说明书第22页共38页CATCHSQLEXCEPTIONSQLE2SYSTEMOUTPRINTLNSQLE2TOSTRING522系统管理模块实现功能建立与数据库连接,运行主界面,根据输入调用子模块,退出系统时断开与数据库的连接。输入项目用户鼠标点击工具栏各个按钮程序逻辑图55系统管理模块程序设计图IMPORTJAVAAWTIMPORTJAVAAWTEVENT初始化主界面连接数据库还书界面退出主界面会员管理界面图书管理界面框借书界面按键选择,是否退出根据所选功能否续借界面还书查询界面借书查询界面关于界面是中北大学2010届毕业设计说明书第23页共38页IMPORTJAVAXSWING/IMPORTMYCLASSSWINGPUBLICCLASSMAINWINDOWEXTENDSJFRAMEIMPLEMENTSACTIONLISTENERJPANELPANEL1/PANEL2CONTAINERCJMENUBARMENUBJMENUSYSTEMMENU,BOOKMGRMENU,BORROWBOOKMENU,RETURNBOOKMENU,INFOBROWSEMENU,USERMGRMENUJMENUITEMUSERLOGINMENUITEM,USERADDMENUITEM,USERMODIFYMENUITEM,USERDELETEMENUITEM,EXITMENUITEM,BOOKADDMENUITEM,BOOKMODIFYMENUITEM,BOOKDELETEMENUITEM,BORROWBOOKMENUITEM,BORROWINFOMENUITEM,RETURNBOOKMENUITEM,RETURNINFOMENUITEM,BOOKLISTMENUITEM,BORROWBOOKLISTMENUITEM,USERLISTMENUITEMJLABELTITLELABEL,AUTHORLABEL,DATELABELPUBLICMAINWINDOWSUPER“图书馆管理系统“/系统管理菜单MENUBNEWJMENUBARSYSTEMMENUNEWJMENU“系统管理“USERMGRMENUNEWJMENU“用户管理“USERLOGINMENUITEMNEWJMENUITEM“用户登录“USERADDMENUITEMNEWJMENUITEM“添加用户“USERMODIFYMENUITEMNEWJMENUITEM“修改用户“USERDELETEMENUITEMNEWJMENUITEM“删除用户“EXITMENUITEMNEWJMENUITEM“退出“SYSTEMMENUADDUSERLOGINMENUITEMUSERMGRMENUADDUSERADDMENUITEMUSERMGRMENUADDUSERMODIFYMENUITEMUSERMGRMENUADDUSERDELETEMENUITEM中北大学2010届毕业设计说明书第24页共38页SYSTEMMENUADDUSERMGRMENUSYSTEMMENUADDEXITMENUITEMUSERLOGINMENUITEMADDACTIONLISTENERTHISUSERADDMENUITEMADDACTIONLISTENERTHISUSERMODIFYMENUITEMADDACTIONLISTENERTHISUSERDELETEMENUITEMADDACTIONLISTENERTHISEXITMENUITEMADDACTIONLISTENERTHISMENUBADDSYSTEMMENU/书籍管理菜单BOOKMGRMENUNEWJMENU“书籍管理“BOOKADDMENUITEMNEWJMENUITEM“添加书籍“BOOKMODIFYMENUITEMNEWJMENUITEM“修改书籍“BOOKDELETEMENUITEMNEWJMENUITEM“删除书籍“BOOKMGRMENUADDBOOKADDMENUITEMBOOKMGRMENUADDBOOKMODIFYMEN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论