图书馆管理系统毕业论文_第1页
图书馆管理系统毕业论文_第2页
图书馆管理系统毕业论文_第3页
图书馆管理系统毕业论文_第4页
图书馆管理系统毕业论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业设计第1页共39页1引言图书作为一种信息资源,用户阅读的资料繁多,包含很多的信息数据的管理,现今,有很多的图书管理都是手工的,尚未使用计算机进行管理。根据调查得知,以前通常对图书管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书信息和卖出书情况(如书籍信息、会员信息、卖出的书的数量等)的统计和核实等往往采用对书号的人工检查进行,对会员的权限、以及总经费等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏规范的系统管理手段。尽管有的商店、企业有计算机,但是尚未用于管理,没有发挥它的效力,资源闲置比较突出,这就是图书管理系统的开发的基本环境。由于图书管理在数据处理上是手工操作,工作量大,出错率高,出错后不易更改。图书管理采取手工方式对图书情况进行人工管理,由于信息比较多,图书信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书管理的工作人员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅查找了,造成查询费时费力。如要对很长时间以前的图书进行更改就更加困难了。基于这此问题就有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。图书馆管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析如此情况,使用SUN公司的JAVA作为前台开发语言,它是一种跨平台、适合于分布式计算环境的面向对象编程语言,以MICROSOFTACCESS2000作为后台数据库。这次毕业设计的课题是“图书馆管理系统的设计与实现”,目的是对学校图书信息进行全面的规划与管理,帮助学校做到1、完善体系管理。2、加强流程控制。3、实现量化管理。4、过渡到以读者为本的管理。5、科学管理读者的信息,优化分类,全面读者的情况。本科毕业设计第2页共39页6、科学管理图书的各种信息,优化分类,使读者对图书信息明确化。2编程语言与开发工具介绍本图书管理系统平台采用C/S结构,整个平台用JAVA与MICROSOFTACCESS2000数据库结合实现。21JAVA简介211JAVA简介JAVA语言其实最是诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。在JAVA出现以前。INTERNET上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。迫切希望能在WEN中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,而SUN的工程师敏锐地察觉到了这一点,从1994年起,便开始将OAK技术应用于WEB上,并且开发出了HOTJAVA的第一个版本。212JAVA的特点JAVA是一种跨平台,适合于分布式计算环境的面向对象编程语言。具体来说,它具有如下特性1面向对象面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为程序算法数据;面向对象编程语言为程序对象消息。所有面向对象编程语言都支持三个概念封装、多态性和继承,JAVA也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。JAVA语言的封装性较强,因为JAVA无全程变量,无主函数,在JAVA中本科毕业设计第3页共39页绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,JAVA也提供了相应的对象类型以便与其他对象交互操作。多态性就是多种表现形式,具体来说,可以用“一个对外接口,多个内在实现方法”表示。举一个例子,计算机中的堆栈可以存储各种格式的数据,包括整型,浮点或字符。不管存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员不必手工选择,只需使用统一接口名,系统可自动选择。运算符重载(OPERATOROVERLOAD一直被认为是一种优秀的多态机制体现,但由于考虑到它会使程序变得难以理解,所以JAVA最后还是把它取消了。继承是指一个对象直接使用另一对象的属性和方法。事实上,我们遇到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它可以分成多个子实体,如卡车、公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的“父亲”,而这些子实体则是汽车的“孩子”。JAVA提供给用户一系列类(CLASS),JAVA的类有层次结构,子类可以继承父类的属性和方法。与另外一些面向对象编程语言不同,JAVA只支持单一继承。2平台无关性JAVA是平台无关的语言是指用JAVA写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关有两种源代码级和目标代码级。C和C具有一定程度的源代码级平台无关,表明用C或C写的应用程序不用修改只需重新编译就可以在不同平台上运行。JAVA主要靠JAVA虚拟机(JVM)在目标码级实现平台无关性。JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。(目前,SUN系统公司已经设计实现了JAVA芯片,主要使用在网络计算机NC上。另外,JAVA芯片的出现也会使JAVA更容易嵌入到家用电器中。)JVM是JAVA平台无关的基础,在JVM上,有一个JAVA解释器用来解释JAVA编译器编译后的程序。JAVA编程人员在编写完软件后,通过JAVA编译器将JAVA源程序编译为JVM的字节代码。任何一台机器只要配备了JAVA解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的。另外,JAVA采用的是基于IEEE标准的数据类型。通过JVM保证数据类型的一致性,也确保了JAVA的平台无关性。JAVA的平台无关性具有深远意义。首先,它使得编程人员所梦寐以求的事情(开发一次软件在任意平台上运行)变成事实,这将大大加快和促进软件产品的开发。其次JAVA本科毕业设计第4页共39页的平台无关性正好迎合了“网络计算机”思想。如果大量常用的应用软件(如字处理软件等)都用JAVA重新编写,并且放在某个INTERNET服务器上,那么具有NC的用户将不需要占用大量空间安装软件,他们只需要一个JAVA解释器,每当需要使用某种应用软件时,下载该软件的字节代码即可,运行结果也可以发回服务器。目前,已有数家公司开始使用这种新型的计算模式构筑自己的企业信息系统。3分布式分布式包括数据分布和操作分布。数据分布是指数据可以分散在网络的不同主机上,操作分布是指把一个计算分散在不同主机上处理。JAVA支持WWW客户机/服务器计算模式,因此,它支持这两种分布性。对于前者,JAVA提供了一个叫作URL的对象,利用这个对象,你可以打开并访问具有相同URL地址上的对象,访问方式与访问本地文件系统相同。对于后者,JAVA的APPLET小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。JAVA提供了一整套网络类库,开发人员可以利用类库进行网络程序设计,方便得实现JAVA的分布式特性。4可靠性和安全性JAVA最初设计目的是应用于电子类消费产品,因此要求较高的可靠性。JAVA虽然源于C,但它消除了许多C不可靠因素,可以防止许多编程错误。首先,JAVA是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,JAVA不支持指针,这杜绝了内存的非法访问;第三,JAVA的自动单元收集防止了内存丢失等动态内存分配导致的问题;第四,JAVA解释器运行时实施检查,可以发现数组和字符串访问的越界,最后,JAVA提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以简化错误处理任务便于恢复。由于JAVA主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。JAVA通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当JAVA字节码进入解释器时,首先必须经过字节码校验器的检查,然后,JAVA解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络上装载的类只能访问某些文件系统。5多线程线程是操作系统的一种新概念,它又被称作轻量进程,是比传统进程更小的可并发执行的单位。C和C采用单线程体系结构,而JAVA却提供了多线程支持。JAVA在两方本科毕业设计第5页共39页面支持多线程。一方面,JAVA环境本身就是多线程的。若干个系统线程运行负责必要的无用单元回收,系统维护等系统级操作;另一方面,JAVA语言内置多线程控制,可以大大简化多线程应用程序开发。JAVA提供了一个类THREAD,由它负责启动运行,终止线程,并可检查线程状态。JAVA的线程还包括一组同步原语。这些原语负责对线程实行并发控制。利用JAVA的多线程编程接口,开发人员可以方便得写出支持多线程的应用程序,提高程序执行效率。必须注意地是,JAVA的多线程支持在一定程度上受运行时支持平台的限制。例如,如果操作系统本身不支持多线程,JAVA的多线程特性可能就表现不出来。22MICROSOFTACCESS2000简介ACCESS是微软公司推出的基于WINDOWS的桌面关系数据库管理系统(RDBMS),是OFFICE系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。MICROSOFTACCESS在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序这些应用程序都利用ASP技术在INTERNETINFORMATIONSERVICES运行比较复杂的WEB应用程序则使用PHP/MYSQL或者ASP/MICROSOFTSQLSERVER它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。一些专业的应用程序开发人员使用ACCESS用作快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透个网络存取数据的话,ACCESS的可扩放性并不高因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端服务器为本的方案,例如ORACLE、DB2、MICROSOFTSQLSERVER、WINDOWSSHAREPOINTSERVICES、POSTGRESQL、MYSQL、ALPHAFIVE、MAXDB,或者FILEMAKER。无论如何,不少ACCESS的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括JET(档案为主的数据库引擎,ACCESS缺省使用)、MICROSOFTSQLSERVER、ORACLE和任何其他跟ODBC兼容的产品。这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经本科毕业设计第6页共39页在适当的位置牺牲发展。ACCESS的优点(1)存储方式单一ACCESS管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(MDB)的数据库文件种,便于用户的操作和管理。2面向对象ACCESS是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。(3)界面友好、易操作ACCESS是一个可视化工具,是风格与WINDOWS完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。(4)集成环境、处理多种数据信息ACCESS基于WINDOWS操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。(5)ACCESS支持ODBC(开发数据库互连,OPENDATABASECONNECTIVITY),利用ACCESS强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、EXCEL表格、WORD文档,还可以建立动态的数据库报表和窗体等。ACCESS还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建INTERNET/INTRANET的应用。23JDBC简介本科毕业设计第7页共39页JDBC(JAVADATABASECONNECTIVITY,JAVA数据库连接)是一种用于执行SQL语句的JAVAAPI,可以为多种关系数据库提供统一访问,它由一组用JAVA语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JAVAAPI编写数据库应用程序,同时,JDBC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问SYBASE数据库专门写一个程序,为访问ORACLE数据库又专门写一个程序,或为访问INFORMIX数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送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的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,本科毕业设计第8页共39页随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,JAVA和JDBC可为外部客户提供获取信息更新的更好方法。3系统需求分析31课题背景随着计算机技术在各个领域的广泛应用,近年来,计算机技术在学校图书管理领域也迅速的得到了所要的发展,可是就读者信息管理来说,计算机的应用就相对的比较复杂了。因为根据不同的读者信息管理条件和硬件条件,相对会有不同的管理需求,同时,因为这个系统要求要和读者具有交互功能,因此要有具备发布系统,同时在界面设计上也要求要有一定的美观,给人以美的视觉效果。目前这个图书管理系统是就目前大多数图书管理的现实条件出发设计,能够满足大部分管理的需要,同时为了照顾个别其他信息管理情况,此读者信息系统在设计上具有再开发的能力,在功能上可以再予扩充,从而成为可以根据具体服务项目而设计的应用软件。本课题就是在目前的情形下,从读者信息管理目前所现有的实际条件出发,利用学校所拥有的计算机硬件设备和软件条件,实现一整套关于图书管理的软件。为我们的读者管理人员减少点负担,从根本上做到科学化、高效率化管理这一目的,这也是学校图书管理领域发展的必然趋势。随着网络化学校管理区域的发展,学校的建设管理在我国得到越来越迅猛的发展,在读者管理制度上便有更高的要求,如何制定一套能够适合大多数图书管理的应用平台是现在读者管理人员亟待解决的问题,本课题研究从公司实际需求情况出发,根据院校现有的硬件设施,改变以往固定的管理模式,做到跟读者无距离的交流、登记,为他们提供更为方便、直接的服务,对院校的管理工作进行了科学、规范的管理,调动读者管理以及工作人员的积极性,提高他们的工作效率,对读者的服务和智能化管理工作是一个推动。而调动全民工作积极性,也便于领导实施监督管理,提高图书管理工作的业务素质。同时也可以加强与读者的交流,便于读者对院校的硬件设施以及环境做更详细的了解,实现无距离接触,无距离登记,真正建设成适应新形势下要求的图书信息管理系统,为院校读者的管理系统带来不可估量的利润价值。32系统功能分析本科毕业设计第9页共39页院校的图书管理是基础性的管理工作。图书管理是一个学校发展的关键动力,只有加强图书管理,才21能不断提高学校的教学质量。帮助学校各领导层掌握院校读者的情况,系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本图书馆管理系统需要完成的功能主要有实现用户登录、注册功能在此区域用户可以输入用户名、用户密码和选择用户身份来登录本系统,用户身份包括图书馆管理员、教师和学生。如果没有注册的用户想进入本系统可以单击“注册”按钮来注册新用户。菜单栏主要功能菜单栏包括以下七个功能系统管理,包括以下功能管理员设置主要是实现用户的添加、修改和删除;罚金设置主要是实现每日超期罚款金额;切换用户主要是实现切换不同用户的登录;离开挂起主要是实现当用户有事而暂时离开时,锁定和解除锁定系统;退出系统退出本系统。图书设置,包括以下功能图书类型设置主要是为管理员给图书分类而设置;出版社设置主要是为管理员以后方便输入图书信息而设置;存放位置设置主要是为管理员给书架分组而设置。图书管理包括以下功能图书资料主要是实现图书信息的查询、新书入库、图书修改删除;借阅图书主要是实现图书的借阅管理。续借图书主要是实现图书的续借管理。归还图书主要是实现图书的归还管理。挂失图书主要是实现图书的挂失管理。读者管理,包括以下功能读者类型设置在本窗体下,用户可以设置不同的读者类型及可借数量和最长期限。有效证件设置在本窗体下,可以添加、修改和删除有效证件的类型。本科毕业设计第10页共39页读者信息管理本窗体提供了查询、修改、添加、删除读者信息功能。读者挂失与恢复本窗体为因不慎丢失借书证件的读者提供了挂失和解除挂失功能,同时提供了查询功能,可以精确查询所要挂失读者的信息。读者到期续证此窗体将自动显示全部到期或超期读者信息,并办理续证。系统查询菜单,包括以下功能图书信息查询本查询支持模糊和精确查询,可以查询图书的各种信息。借阅图书信息查询本查询支持模糊和精确查询,使读者更方便地查询到已借阅图书的各种信息。归还/超期图书信息查询本窗体可显示全部已归还图书和已超期图书。挂失图书信息查询本窗体可以显示全部的已挂失的图书信息。读者信息查询本查询支持模糊查询和精确查询,可以显示读者的各种信息,极大地方便了对读者的管理。今日信息查询包括三个功能,借阅图书信息、归还图书信息和到期/超期信息,分别可以查询当天的借阅情况、归还情况和到期/超期情况。统计排名,包括以下功能图书借阅排名可按借阅次数升序和降序排列图书,反映图书借阅情况。读者借阅排名可按已借数量升序和降序排列读者,反映读者借阅情况。罚款统计本功能可以对超期读者和挂失图书所付的赔偿作统计和汇总。系统帮助,包括以下功能有关本系统的一些版权信息、版本及系统平台的一些信息。工具栏的功能工具栏包括以下十二个功能注销用户可以注销当前登录用户。读者资料维护功能与上述菜单栏中的读者信息功能相同。读者挂失、解除挂失和到期续证可以为不慎丢失借书证件的读者办理挂失,当证件找回时可解除挂失以及为已到期读者办理续证。图书资料管理主要是办理图书的入库、修改和出库。借阅记录主要是显示图书的借阅信息。借阅图书管理功能与上述菜单栏中的借阅图书功能相同。续借图书管理功能与上述菜单栏中的续借图书功能相同。归还图书管理功能与上述菜单栏中的归还图书功能相同。本科毕业设计第11页共39页挂失图书管理功能与上述菜单栏中的挂失图书功能相同。浏览书目主要是浏览图书的相信息。检索书目主要是查询图书的相关信息。系统帮助主要是查看关于本系统的帮助文件。状态栏的功能状态栏包括以下四个功能本系统名称显示本系统的名称。本图书馆地址显示本图书馆的地址。用户身份显示已登录用户的身份。当前时间显示当前时间。33系统功能模块分析图书类型切换用户离开挂起退出系统系统管理罚金设置管理员设置本科毕业设计第12页共39页4概要设计41概要说明学校的图书馆管理是基础性的管理工作。图书管理是学校办学基础,只有加强图书管理,才能不断提高学生知识的广阔度。这就是本图书管理系统需要完成的功能。本系统的数据库是使用ASSESS制作的,本图书管理系统主要对学校的学生读者进行管理。42系统总体结构设计本系统主要包括五个模块登录及注册区域、图书馆主页、菜单栏、工具栏、状态栏。43数据库逻辑设计数据库是信息管理的基础。数据库结构直接关系到各种功能的实现和程序运行的效率。进行数据库设计首先必须准确了解与分析读者需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。需求分析的结果是否准确地反映了读者的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。首先创建一个名为DINGCAN的数据库,根据上面的分析各表详细信息如下图书馆管理系统登录及注册区域工具栏状态栏图书馆主页菜单栏系统设置图书设置图书管理读者管理系统查询统计排名系统帮助本科毕业设计第13页共39页表41出版设置表字段名字段类型长度是否允许为空编号文本50NO名称文本4YES表42读者类型表字段名字段类型长度是否为空编号文本50YES名称文本50YES可借数量数字长整型YES最长期限数字长整型YES表43读者资料表字段名字段类型长度是否为空读者姓名文本20NO读者编号文本20NO条形码文本50YES性别文本2YES身份文本20NO有效证件文本50YES证件号码文本50YES注册日期文本50YES截止日期文本50YES出生日期文本50YES联系电话文本50YES联系地址文本255NO读者状态文本10NO可借数量数字长整型YES最长期限数字长整型YES借阅次数数字长整型YES本科毕业设计第14页共39页操作员文本50NO备注备注255YES已借数量数字长整型YES表44罚金设置字段名字段类型长度是否为空每日罚金数字20YES是否自动显示文本50YES编号文本50YES表45罚款统计表字段名字段类型长度是否为空读者编号文本20NO读者条形码文本50YES读者姓名文本50YES图书编号文本50YES图书条形码文本50YES图书名称文本50YES是否超期文本50YES超期天数文本50YES每日罚金文本50YES罚款总额文本50YES罚款日期文本50YES操作员文本50YES表46挂失图书表字段名字段类型长度是否为空图书编号文本20NO图书条形码文本50YES图书名称文本50YES读者编号文本50YES本科毕业设计第15页共39页读者条形码文本50YES读者姓名文本50YES丢失数量文本50YES丢失时间文本50YES是否超期文本50YES超期天数文本50YES每日罚金文本50YES罚款总计文本50YES赔偿金额文本50YES操作员文本50YES表47借书统计表字段名字段类型长度是否为空读者姓名文本50YES读者编号文本20NO读者条形码文本30NO图书名称文本50YES图书编号文本50YES图书条形码文本50YES借阅数量文本50YES图书价格文本50YES出版社文本50YES存放位置文本50YES图书类型文本50YES借书日期文本50YES应还日期文本50YES操作员文本50YES续借文本50YES是否超期文本50YES本科毕业设计第16页共39页表48离开挂起表字段名字段类型长度是否允许为空密码文本50YES编号文本50YES表49书架设置表字段名字段类型长度是否允许为空书架编号文本50YES名称文本50YES表410图书类型设置表字段名字段类型长度是否允许为空编号文本50YES类型名称文本100YES表411图书资料表字段名字段类型长度是否为空图书名称文本100NO编号文本50YES条形码文本30NO分类法文本50NO作者文本30NO类型文本100NO价格数字单精度型YES出版社文本100NO页码文本50YES书架名称文本100NO出版日期文本100YES入库日期文本100YES库存量数字长整型YES借阅次数数字长整型YES本科毕业设计第17页共39页图书状态文本50NO操作员文本50YES摘要文本255NO表412信息反馈表字段名字段类型长度是否为空姓名文本150NO单位文本255NO地址文本255NO电子邮件文本150NO反馈信息备注255NO反馈日期文本50YES表413续借统计表字段名字段类型长度是否为空读者姓名文本50YES读者编号文本20NO读者条形码文本30NO图书名称文本50YES图书编号文本50YES图书条形码文本50YES续借数量文本50YES图书价格文本50YES出版社文本50YES存放位置文本50YES图书类型文本50YES上次借阅时间文本50YES本次续借时间文本50YES下次归还时间文本50YES操作员文本50YES本科毕业设计第18页共39页续借次数文本50YES是否超期文本50YES表414用户资料表字段名字段类型长度是否为空用户名文本10NO密码文本15NO身份文本50NO性别文本50NO系别文本50NO系统设置文本50YES图书设置文本50YES图书管理文本50YES读者管理文本50YES系统查询文本50YES统计排名文本50YES系统帮助文本50YES表415有效证件表字段名字段类型长度是否允许为空编号文本50YES有效证件文本50YES5系统详细设计本系统中我主要负责的是菜单栏中系统管理、图书设置、图书管理、读者管理以及工具栏模块,下面我将依次着重论述。本科毕业设计第19页共39页51菜单栏界面511系统管理界面管理员设置在本窗体内,用户可以根据自己的需求,设置具有不同权限的管理员。每个管理员可以设立自己单独的密码,以便管理,和提高安全性。用户在此窗体下点击添加便可以添加新的管理员了。在用户名一栏中为管理员设置唯一的用户名,然后在下拉框中选择用户的身份、性别以及系别,在多选框下选择此用户所具有的权限,其中包括系统设置、图书设置、图书管理、读者管理、系统查询、统计排名、系统帮助。在确定权限后必须为此用户设置一个用户密码。1添加点添加,然后在相应的输入框内输入相应的信息,最后点击保存。2修改从表格中选中所要修改的的对象,然后点修改,所选对象相应的信息会自动进入相应的输入框,此时可以自行修改,修改完成后,点保存即可。3删除可以从表格中选取所要删除的对象,点保存即可。4取消取消当前操作。5退出退出管理员设置。罚金设置本科毕业设计第20页共39页本窗体内,管理员可以设置图书超期的每日罚款金额,并可以设置是否自动显示到/超期信息。切换用户本功能可以切换不同的用户登录本系统。离开挂起当用户有事需要暂时离开时,可在此窗体密码框键如密码,点击挂起,系统将提示软件成功挂起,此时软件界面将被屏蔽。若要取消挂起,只需要重新输入密码,点击解除,软件将自动解除挂起状态。退出系统退出本图书馆管理系统。512图书设置界面图书类型设置本窗体主要是为管理员给图书分类而设置。管理员可以根据藏书情况,给图书分类。给图书分类可以提高图书的查询速度,方便用户随时随地添加、更改、删除图书的分类。出版社设置本科毕业设计第21页共39页本窗体主要是为管理员给出版社分类而设置。管理员可以根据进书情况,给出版社分类。给出版社分类可以提高图书的查询速度,方便用户随时随地添加、更改、删除出版社的分类。书架设置本窗体主要是为管理员给书架分类而设置。管理员可以根据图书的分类发问,给书架分类。给书架分类可以提高图书的查询速度,方便用户随时随地添加、更改、删除书架的分类。513图书管理界面图书资料此功能窗体下,用户可以根据书馆藏书情况,对数据库进行图书录入,通过添加、修改、删除等功能来实现,使得用户可以更加方便快捷进行图书录入工作。本科毕业设计第22页共39页1查询点查询,弹出图书信息查询窗体,如下图所示,可以选择选择查询条件,然后在文本框中输入关键词语,点击执行查询,查询结果就可以显示在图书资料管理窗体的表格内。2全部信息点击此按钮可以显示所有图书的全部信息。3新书录入点击此按钮弹出图书入库窗体,如下图所示,在各个文本框中输入图书的相关信息后,点击入库按钮,即可添加此新书的信息。4更改资料点击此按钮弹出图书资料更新窗体,如下图所示,点击更新按钮会弹出图书资料更改窗体,如下图所示可以选择查询条件,之后再输入关键词语,即可在上个窗体中显示所要修改的图书信息,之后选择所要修改的图书信息,改完后点击更新按钮即可完成修改。5注销资料点击此按钮,弹出图书出库窗体,如下图所示,本科毕业设计第23页共39页点击出库按钮会弹出图书资料删除窗体,如下图所示可以选择查询条件,之后再输入关键词语,即可在上个窗体中显示所要删除的图书信息,之后点击出库按钮即可完成删除。借阅图书本功能窗体下,用户应该首先选择验证依据中的任一种(如读者编号),然后在验证条件一栏中,依据所选择的依据条件种类添入相应的条件,点击查询按钮,如此读者所借图书已超期或此读者已挂失,则会提示读者归还该超期图书或办理新证,否则,读者信息的整体框中将会显示读者信息,在退出右边的框中会显示此读者的可借数量、最长期限和已借数量,在已借图书信息栏会显示该读者已借阅的图书信息;之后在选择图书一框中选中一种借阅条件,根据所选条件,在对应条件一栏中添加相应的条件并点击查询按钮,要借的书籍将会自动进入表格,然后在表格中选择此图书,在已借阅图书信息中填入相应的信息之后,点击借书按钮如果此书未被借出即成功借阅此书。点击刷新可以清空信息,重新办理借阅。续借图书本科毕业设计第24页共39页本功能窗体下,用户应该首先选择验证依据中的任一种(如读者编号),然后在验证条件一栏中,依据所选择的依据条件种类添入相应的条件,点击查询按钮,如此读者所借图书已超期或此读者已挂失,则会提示读者归还该超期图书或办理新证,否则,读者信息的整体框中将会显示读者信息,在退出右边的框中会显示此读者的可借数量、最长期限和已借数量,在选择要续借的图书栏会显示该读者已借阅的图书信息;然后在表格中选择此图书,在续借图书信息中填入相应的信息之后,点击续借按钮如果此书未超期即成功续借此书。点击刷新可以清空信息,重新办理续借。归还图书本功能窗体下,用户应该首先选择验证依据中的任一种(如读者编号),然后在验证条件一栏中,依据所选择的依据条件种类添入相应的条件,点击查询按钮,如此读者所借图书已超期或此读者已挂失,则会提示读者归还该超期图书或办理新证,否则,读者信息的整体框中将会显示读者信息,在退出右边的框中会显示此读者的可借数量、最长期限和已借数量,在续借图书信息栏会显示该读者已续借的图书信息,在未续借图书信息栏会显示该读者未续借的图书信息;然后在表格中选择此图书,如果此图书已超期,则会显示超期天数、每日罚金和罚款金额,然后点击交付罚金按钮,交付超期罚金后即可点击归还图书按钮归还该图书,否则在归还图书办理中填入相应的信息之后,点击归还图书按钮即成功归还此书。点击刷新可以清空信息,重新办理还书。挂失图书本科毕业设计第25页共39页本功能窗体下,用户应该首先选择验证依据中的任一种(如读者编号),然后在验证条件一栏中,依据所选择的依据条件种类添入相应的条件,点击查询按钮,读者信息的整体框中将会显示读者信息,在退出右边的框中会显示此读者的可借数量、最长期限和已借数量,在续借图书信息栏会显示该读者已续借的图书信息,在未续借图书信息栏会显示该读者未续借的图书信息;然后在表格中选择此图书,如果此图书已超期,则会显示超期天数、每日罚金和罚款金额,然后点击交付罚金按钮,交付超期罚金后输入赔偿金额即可点击图书挂失按钮挂失该图书,否则在挂失图书办理中填入相应的信息之后,点击图书挂失按钮即成功挂失此书。点击刷新可以清空信息,重新办理挂失。514读者管理界面读者类型设置在本窗体下,用户可以根据自己所在的图书馆的具体情况、和办证需要,设立不同的读者类型。根据不同的读者类型设置此类读者一次可借阅的图书册数以及最长期限,从而达到最好的借阅效果1添加点添加,然后在相应的输入框内输入相应的信息,最后点击保存。2修改从表格中选中所要修改的的对象,然后点修改,所选对象相应的信息会自动进入相应的输入框,此时可以自行修改,修改完成后,点保存即可。3删除可以从表格中选取所要删除的对象,点保存即可。4取消取消当前操作。有效证件设置本科毕业设计第26页共39页在本窗体下,用户可以根据自己所在的图书馆的具体情况、和办证需要,设立不同的有效证件。1添加点添加,然后在相应的输入框内输入相应的信息,最后点击保存。2修改从表格中选中所要修改的的对象,然后点修改,所选对象相应的信息会自动进入相应的输入框,此时可以自行修改,修改完成后,点保存即可。3删除可以从表格中选取所要删除的对象,点保存即可。4取消取消当前操作。读者信息在本窗体下,可以详细记录下读者的信息,以便于与读者的联系。同时本窗体提供了查询、修改、添加、删除功能,有助于用户对读者的统计和了解,对书馆图书的管理起了一定的保障。1查询点查询按钮,弹出读者信息查询窗体,如下图所示,可以选择选择查询条件,然后在文本框中输入关键词语,点击执行查询,查询结果就可以显示在读者信息管理窗体的表格内。2全部信息点击此按钮可以显示所有图书的全部信息。3添加读者点击此按钮弹出图书入库窗体,如下图所示,本科毕业设计第27页共39页在各个文本框中输入读者的相关信息后,点击添加按钮,即可添加此新读者的信息。4更改资料点击此按钮弹出读者资料更新窗体,如下图所示,点击更新按钮会弹出读者资料修改窗体,如下图所示可以选择查询条件,之后再输入关键词语,即可在上个窗体中显示所要修改的读者信息,之后选择所要修改的读者信息,改完后点击更新按钮即可完成修改。5注销读者点击此按钮,弹出读者资料删除窗体,如下图所示点击删除按钮会弹出读者资料删除窗体,如下图所示本科毕业设计第28页共39页可以选择查询条件,之后再输入关键词语,即可在上个窗体中显示所要删除的读者信息,之后点击删除按钮即可完成删除。读者挂失、恢复与到期续证本窗体为因不慎丢失借书证件的读者提供了挂失功能,在一定程度上解决了因证件丢失而造成的图书冒领、冒借,图书丢失的问题。当证件找回或补办,可以解除挂失。当需要挂失时,仅需选中所要挂失的读者,点击挂失,系统将会提示操作成功。而相应的为挂失读者被选中时,点击恢复按钮则可以恢复此读者,在此窗体下还将自动显示借书证件已经到期和过期的读者,如果需要续办,只需要人表格中选中要续办的对象,点击到期续证按钮,系统将提示操作成功,同时读者状态将变为正常。本窗体同时提供了查询功能,可以进行精确查询。52工具栏界面第一个,注销当前用户按钮,当用户已登录本系统时才可使用,可注销当前登录用户。第二个,读者资料维护按钮,实现读者的查询、添加、修改和删除。第三个,读者挂失、恢复与到期续借按证按钮,与菜单中相应功能一样。第四个,图书管理按钮,实现图书的查询、添加,修改和删除。第五个,借阅记录按钮,记录图书的借阅情况。本科毕业设计第29页共39页第六个,借阅图书按钮,实现图书的借阅管理。第七个,续借图书按钮,实现图书的续借管理。第八个,归还图书按钮,实现图书的归还管理。第九个,图书挂失按钮,实现图书的挂失管理。第十个,浏览书目按钮,实现图书信息的查看。第十一个,检索书目按钮,实现图书信息的查询。第十二个,系统帮助按钮,提供本系统的相关帮助。6用户手册61系统主要功能本系统是院校管理系统,该系统主要功能包括管理员登录及注册、图书馆主页(包括九个功能本馆概况、人员组成、开馆时间、馆藏分布、馆内布局、规章制度、新书通报、新书亮点和信息反馈)、工具栏、菜单栏(包括七个功能系统设置、图书设置、图书管理、读者管理、系统查询、统计排名和系统帮助)和状态栏。本课题主要是解决院校图书管理问题,目标是使院校图书馆管理人员在院校的图书管理上也做到数据的信息化、快速化和网络化。62运行环境要求硬件最低配置要求主机主频在133MHZ以上(最重要是稳定);内存16内存;硬盘系统需用硬盘容量大约30;显示器标准VGA彩色显示器;800X600,256色;输入设备键盘、鼠标。软件配置操作系统中文WINDOWS2000以上版本。运行环境JDK14以上版本。其它要求要绝对地保证无病毒,否则会引起数据错误切记本科毕业设计第30页共39页63系统安装与初始化本系统基于JAVA和ACCESS,故PC机上必须安装JDK14以上版本和MICROSOFTOFFICE2000以上版本,不需要安装其它特别软件环境64系统操作说明进入系统主界面,输入下面的用户名及密码用户名ADMIN密码ADMIN用户身份图书馆管理员系统主界面如下图所示在这个界面可以进行所有的操作,大体的功能已经在上面的详细设计中介绍。所遇到的困难及解决方案在毕业设计的过程中,我们遇到了很多意料之外的困难,由于本人的能力有限,以及所学知识的片面性从而导致在课程设计过程中出现了很多困难,从最初的构思到最后的综合测试,从程序出错到系统问题,大部分的困难是我们以前没有遇到过的,于是虚心请教同学及老师从而把问题解决掉。(1)JAVA界面布局问题在刚开始做界面,由于不熟悉JAVA的各种布局,所以做的界面非常粗糙且控件放置比较乱,但由于请教老师与同学,这个问题慢慢解决了并达到相当熟练的地步。(2)JDBC数据库问题在刚连接数据库时,根据书上的做要设置数据源,但是这种做法往往使系统变得操作困难起来,于是便四处查找不用设数据源的代码,想到以前用VB做数据库时就不用设数据源,便拿来代码参考,经过数次调试,终本科毕业设计第31页共39页于成功。(3)SWING类库的使用由于做界面时要用到许多其中的类库,尤其是JAVA表格、JAVA滚动面板和JAVA分隔面板比较不好做,但经过多次查询英文版的JDK14API和问老师以及同学,终于得到了圆满的解决。(4)JAVA中嵌入网页的问题由于做了个图书馆主页,想把整个图书馆的相关信息通过网页的形式反映出来,但是在做的初期,手头上这方面的资料可以说是少之又少,但经过多方查找,尤其是通过上网查找,终于有了一点头绪,埋头做了一天多,终于把第一个网页显示出来,万事开头难,以后的就好做了。(5)判断图书是否超期的问题由于不懂JAVA中日期是怎么判断的,所以在做的时候一度想放弃,但做做停停,始终不想放弃,功夫不负有心人呢,经过多次调试和请教老师,终于基本上解决,实现此功能。(6)状态栏的制作问题由于JAVA类库中并没有提供状态栏一类的类,所以在做的时候查找了好多方法,终于找到一个可行的,即用标签框和边框组合做成状态栏,经以多次调试,终于做成现在这个比较满意的样子。(7)JAVA打印与报表制作的问题这是目前唯一一个没有得到解决的问题,未免有不少遗憾,虽多方查找此方面的资料并多次请教老师与同学,但始终没有得到解决,这也是本系统中比较重要的一个功能,实现比较难是一个原因,但更重要的是没有足够的时间去解决它。本科毕业设计第32页共39页结论经过一个多月的设计和开发,图书馆管理系统基本开发完毕。但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如联机文档比较少,用户界面不够美观,出错处理不够等多方面问题。这些都有待进一步改善。两个月的毕业设计,使我提高了实际操作能力,从以前的理论上升到实践,从感性认识上升到理性认识,真正做到学有所用,虽然在设计过程中我也遇到一些困难,但在老师的帮助和自己的努力下,我都一一克服了,但由于时间关系,我并不能做到尽善尽美,应该说这是一大遗憾吧。本系统的扩展性很强,可根据不同读者的需要,增加其他的功能模块,当然由于技术和语言使用方面存在一些不足,所以本管理系统在功能完善上有待进一步的划分和制作。首先,由于数据库原理的某些方面的细节掌握不够扎实,导致设计过程中的很多变动。其次,对于本次设计,由于时间、自身开发水平及其它原因,对于图形间的比较,没有能够实现,这是自己的一大遗憾。通过这段时间的毕业设计,学到了很多东西,不仅把以前所学的很多知识充分利用上了,还要我学会使用了编程语言和数据库开发技术。我们在虚心听取和接受老师和同学们的意见和建议的同时,会更加努力将其加以完善,并且提高自身知识水平。这并不是毕业设计的结束,更不是人生在学习生涯中的结束,而是新环境、新学习、新挑战的开始。有这样我们才

温馨提示

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

评论

0/150

提交评论