下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学海无涯苦作舟!Xxxx大学毕业设计(论文)基于JAVA的图书馆管理系统设计Design of Library Management SystemBased on Java学生姓名 XXX 学号 xxxxxxxxx专业到王级XXXXXXXXXX指导教师 XXX随着网络技术的发展、计算机应用水平广泛提高,原来系统的时效性、数据的正确性、 操作的方便性上都存在不足,已影响到系统的正常使用。经过考察比较,决定自己对图书管理 系统重新设计,使系统能利用软件开发技术的成果,方便图书的管理。图书管理系统是典型的信息管理系统。系统介绍了图书系统的开发过程,设 计中遇到的 问题及解决方法以及提高当前应用程序或
2、系统开发进度和改善工作性 能。利用其提供的各种面 向对象的开发工具,首先在短时间内建立系统应用原型后,对初始原型系统进行需求迭代, 不断修正和改进,直到形成用户满意的可行系统。本次课程设计利用JAVA开发工具和Mysql数据库来开发这个图书管理系统该系统要解 决图书管理所要解决的问题,可以满足图书管理基本要求,包括添加、管理等功能。该系统能 根据用户的需求,快捷方便的为读者提供借阅服务。关键词:图书管理系统;信息管理;JAVA ; MysqlAbstractAlong with networking's development, the computer application lev
3、el's enhan ceme nfsexpa nsion, system's effective ness, the data accuracy, in the operati on convenien ces has the in sufficie ncy orig in ally, Has affected system's no rmal use. After the in specti on comparis on, decided that uses own stre ngth to the literature man ageme nt system ma
4、nagement system redesign, enables the system to use the software developme nt tech no logy the achieveme nt, convenient literature man ageme nt.The literature registration management system is the typical information man ageme nt system. The system in traduces the literature referral system's pe
5、rforma nee history, it meets the question in the design and the solution as well as enhance the curre nt applicati on procedure or the system developme nt progress and the improveme nt operat ing performa nee. Each ki nd of object-orie nted developme nt kit which provides using it, first establishes
6、 the system application prototype in a short time, then, carries on the dema nd iterati on to the in itial prototype system, revises un ceas in gly and improves, un til forms the user satisfied feasible system.This curriculum develops this literature man ageme nt system man ageme nt system using the
7、 JAVA developme nt kits and Mysql. This system solves the questi on what the literature administration center would solve, may satisfy the literature management esse ntial requireme nts, in cludi ng in crease, inquiry, man ageme nt and so on three aspect functions. This system can act accord ing to
8、the user the dema nd, what facilitates quickly is the reader provides the service.Key Words: Literature man ageme nt system; In formati on man ageme nt; JAVA; Mysql学海无涯苦作舟!目录第1章绪论1-1.1 目前图书馆管理系统存在的问题11.2 课题意义21.3 本论文的研究内容21.4 可行性分析21.4.1 经济可行性21.4.2 技术可行性31.5 图书馆管理系统需求概述31.5.1 系统目标31.5.2 用户类和用户特性4第2
9、章开发环境及工具介绍5.2.1 Java开发环境52.1.1 JAVA 简介 52.1.2 JAVA主要特性52.1.3 JAVA 优缺点7214相关技术82.2 MYSQL82.2.1 MYSQL 简介82.2.2 MYSQL 特性82.3 MYECLIPSE 开发工具9第3章系统总体结构设计及功能概述103.1 图书馆管理系统总体结构图 103.2 文件模块功能 103.3 图书管理模块功能113.4 借阅管理模块功能113.6查询模块功能 14第4章数据库设计164.1数据库设计概述1642数据库各表的设计184.2.1 图书信息表结构设计(book表)184.2.2 管理员信息表结构设
10、计(login表)194.2.3 学生用户信息表结构设计(reader表)204.2.4 借阅卡表结构设计(student表)21第5章基于JAVA的图书馆管理系统的实现 235.1 用户登录235.1.1 登录页面23512登录后的主页面2552退出图书管理系统265.3 管理图书275.3.1 图书入库275.3.2 图书编辑305.3.3 图书删除345.4 借阅管理375.4.1 图书借阅385.4.2 图书归还405.5 账户管理425.5.1 密码修改425.5.2 读者账户管理45553根管理员功能485.6 图书查询495.6.1 查询所有藏书495.6.2 查询已借图书505
11、.6.3图书查询51学海无涯苦作舟!52第6章总结与展望参考文献51致谢54.第1章绪论随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现图书 信息的管理势在必行。目前图书管理的借阅工作部分大多数还是手工管理,工作效率很 低,并且不能及时了解图书的种类和读者们比较需求的图书等,不能更好的适应当前读者 的借阅要求。手工管理还存在这许多弊端,由于不可避 免的人为因素,造成数据的遗漏、 误报。计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时 快捷。本课题是图书馆系统的制作,能实现图书的管理,查询,借阅,极大地提高图书管 理的效率,从而解决图书管理复杂的问题
12、。这也是图书管理的科学化、正规化管理,与世 界接轨的重要条件。1.1 目前图书馆管理系统存在的问题1 .建立图书管理系统数据库管理图书和用户因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非 常困难往往是终于查到了信息,馆中没有此书或已被别人借走。图书馆的规模越大,这个 问题越突出。2 .借书、还书工作量大借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、还书登 记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往往是人工操作 所难以胜任的。而且经常会出现这样那样的差错。3 .图书统计工作难、藏书更新不能及时完成图书馆的图书应根据科学技术
13、的发展和教学工作的需要及时添加和更新,然而由于藏 书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计 工作难以及时完 成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。1 2课题意义随着计算机的广泛应用,其逐步成为现代化的标志。图书馆或者一些企业内部,甚至 是书店,在正常运行过程中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借 书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时 了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆或者 企业内部对图书存销的自动化的管理,能够更快速的满足读者的要求,提
14、高各种工作的效 率,现对其设计相应的系统,以达到上述的目的(1)。图书管理系统的主要功能是实现图书馆图书借阅和归还的管理的自动化。围绕这一主 要功能,本系统涉及到以下核心功能:借阅管理,归还管理。除了这些核心功能外,还包括 一些基本和辅助功能,它们是:用户管理、图书管理、图书 查询。1 3本论文的研究内容本课题主要研究的内容有:(1)建立图书管理系统数据库管理图书和用户;(2)完成菜单栏,有文件,管理,借阅管理,账户管理,查看等选项;(3)管理图书的增删改查,实现借书还书功能;(4)实现账户管理,密码修改功能,并能增加读者、管理员;(5)能查看所有图书,已借图书,图书查询。1 -4可行性分析1
15、.4.1 经济可行性由于图书管理系统是作为毕业设计由我们自己开发的,在经济上的投入甚微,系统建成 之后将为今后图书管理提供很大的方便,估算新系统的开发费用和今后的运行、维护费用, 估计新系统将获得的效益,并将费用与效益进行比较,对今 后使用十分有利(2)01.4.2 技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足 开发的需求等。本图书管理系统用的是JAVA开发语言,调试相对简单,当前的计算机硬 件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模 式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格 低
16、,完全能满足系统的需求。1 5图书馆管理系统需求概述1.5.1系统目标该系统主要建立一个基于C/S模式的图书馆借阅管理系统,面对当起很多小型图书管 理仍是人工管理带来的检索速度慢,效率低,借阅归还图书量大,图书统 计工作量大,藏 书不能完成及时更新的问题,该系统可以对跟系统的三个用户类型的使用实现:(1)对于读者在本系统的应用下可实现查询图书馆的藏书清单,方便的借阅图书,续 借图书,归还图书,能够查询自己的借阅图书情况;(2)对于图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、 删除,对读者信息进行相关添加,修改
17、等操作;(3)对于系统管理员可以对图书馆信息进行修改更新操作,对系统用户进行添加、修 改等操作。1.5.2用户类和用户特性图书借阅管理系统是一个基于C/S模式的对图书馆进行高效率管理的应用系统,它的用户主要是读者和图书管理员,学生通过该系统进行图书查询进而对自己需要的图 书进行借阅及自己的借阅情况进行查询,图书管理员则通过本系统实现对图书及读者的高效管理,除此之外,还需要一个系统管理员对不同的用户进行权限的设置等操作。学海无涯苦作舟!第2章开发环境及工具介绍本系统采用面向对象的软件开发方法,以Java开发环境作为主要开发工具,使用Mysql作为关系数据库,配合功能强大的SQL查询语言实现建立关
18、系数据库,访问数 据库,对数据库的更新,较好地实现了预定的需求功能(4)02.1 Java开发环境2.1.1 JAVA 简介Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE的总称。Java自面世后就非常流行,发展迅速,对C+语言形成了有 力冲击。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的 开发者专业社群。在全球云计算和移动互联网的
19、产业环境下,Java更具备了显著优势和广 阔前景o2.1.2 JAVA主要特性1. Java语言是易学的Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用 Javao另一方面,Java丢弃了 C+中很少使用的、很难理解的、令人迷惑 的那些特性,如 操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理 而担忧。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支 持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。总之, Java八语言是
20、- -个纯的面向对象程序设计语言。3. Java语言是分布式的Java语言支持In ternet应用的开发,在基本的Java应用编程接口中有一个网络 应用编程接口( java net),它提供了用于网络应用编程的类库,包括URL、URLConnectioriy Socketx ServerSocket 等。Java 的 RMI (远程方法激活)机制也是 开发分布式应用的重要手段。4. Java语言是健壮的Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要 保证。 对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮 性。5. Java语言是安全的
21、Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻 击。除了 Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防 范机制(类ClassLoade),如分配不同的名字空间以防替代本地的同名类、字节代码检 查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。6. Java语言是体系结构中立的Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格 式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径 适合于异构的网络环境和软件的分发。7. Java语言
22、是可移植的这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数 据类型 的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现 的,Java的 运行环境是用ANSI C实现的。& Java语言是解释型的学海无涯苦作舟!如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java 平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执 行,执行过程中需要的类在联接阶段被载入到运行环境中。9. Java是性能略高的与那些解释型的高级脚本语言相比,Java的性能还是较优的。10. Java语言是原生
23、支持多线程的在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创 建。通常有两种方法来创建线程:其一,使用型构为Thread (Runn able的构造 子将一 个实现了 Runnable接口的对象包装成一个线程;其二,从Thread类派生出子类并重写 run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了 Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要 运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized) o11.
24、 Java语言是动态的Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。 另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系 统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短 应用系统的开 发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的 开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口( Java Enterp
25、rise APIS为企业计算及电子商务应用系统提供了有关技术和丰富的类库(6)。1.1.3 JAVA优缺点优势:Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无 关、可移植、高性能、多线程和动态的语言Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。Java适合团队开发,软件工程可以相对做到规范。由于Java语言本身的极其严格语法的特点,Java语言无法写出结构混乱的程序。这将强迫程序员的代码软件结 构的规范性。这是一个很难比拟的优势。缺点:j2ee的架构很完美,第一版软件可以做满意,但是很不适合互联网模式的持续不断修 改。互联网软件工程管理上
26、的不足,持续的修修补补导致架构的破坏。1.1.4 相关技术JDBC (Java Database Connectivity提供连接各种关系数据库的统一接口,作为数据源,可以为多种关系数据库提供统一访问,它由一组用 Java语言编写的类 和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构 建更高 级的工具和接口,使数据库开发人员能够用纯Java API编写数据库应用程序,同时,JDBC也是个商标名。2. 2 MYSQL3. 2.1 MYSQL 简介MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MysqlAB公司。MySQL被广泛地应用在In terne
27、t上的中小型网站中。由于其体积小、速 度快、 总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本 而选择了 MySQL作为网站数据库。4. 2. 2 MYSQL 特性(1)使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植 性;(2) 支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware OpenBSDx OS/2 Wrapx Solaris、Windows 等多种操作系统;(3)为多种编程语言提供了 API。这些编程语言包括C、C+、Python、Java PerK PHP、EiffeL Ruby 和 Tel
28、 等;(4)支持多线程,充分利用CPU资源;(5)优化的SQL查询算法,有效地提高查询速度;(6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能 够作为一个库而嵌入到其他的软件中;(7)提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的SMft_JIS 等都可以用作数据表名和数据列名;(8)提供TCP/IP、ODBC和JDBC等多种数据库连接途径;(9)提供用于管理、检查、优化数据库操作的管理工具;(10)支持大型的数据库,可以处理拥有上千万条记录的大型数据库;(11)支持多种存储引擎;(12) Mysql是开源的,所以你不需要支付额外的费用;(13) MySQ
29、L使用标准的SQL数据语言形式;(14) Mysql对PHP有很好的支持,PHP是目前最流行的Web开发语言;(15) Mysql是可以定制的,采用了 GPL协议,你可以修改源码来开发自己 的Mysql系统。2.3 MyEclipse开发工具MyEelipse 企业级工作平台(MyEclipseEnterprise Workbench,简称 MyEclipse) 是对EclipselDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程 序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括 了完备的编码、调试、测试和发布功能,完整支持HTML5St
30、ruts5JSP3CSS5Javascript5Spri ng,SQL,HibernateMyEclipse是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 目前支持 Java Servle, AJAX, JSP, JSF, Struts, Spring, Hibernate, EJB3, JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。第3章系统总体结构设计及功能概述3.1 图书馆管理系统总体结构
31、图绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,即合理地 将数据流程图转变为所需要的系统结构图。系统结构图将会使读者和用户能直观的了解系统的结构模式,理解系统的各个功能的 结构,能很好地方便用户使用和理解整个系统。本系统的结构如图3.1所示。图书管理系统图3.1系统结构图增加读者 勺删除淡者-增加管理员-删除管埋员根据需求分析的结果,按照低耦合、高内聚”的原则,本系统将划分为以下主 要功能 模块:管理员管理功能模块,学生用户管理功能模块,图书管理功能模块,图书借阅归还 功能模块,图书查询功能模块。3.2 文件模块功能该模块的作用是安全退出图书管理系统3.3 图书管理模块功能
32、该模块主要有图书入库,图书编辑和图书删除三个功能,其描述如表3.1所示表3.1图书信息管理描述图书信息管理功能描述对图书进行基本操作和信息管理访问的数据库表进行的操作图书类型表:book添加、修改、删除图书,对图书的书号、书名、单价、作者、出版社等基本信息进行管理产生的结果对图书基本操作管理,对不同图书参数进行各自信息的设置管理结果存储位置或输结果存储在图书类型表(book)中,结果在图书查询页面输出3.4 借阅管理模块功能该模块主要包含借书,还书两个子模块借书的描述如表3.2所示。表3.2图书借阅描述图书借阅管理功能描述对读者借阅图书进行基本操作和信息管理访问的数据库表图书信息表:book学
33、生信息表:stude nt读者信息表:reader进行的操作对读者借阅图书进行管理产生的结果读者借阅成功,系统对借阅信息进行记录结果存储位置或输出结果存储在图书信息表(book)中,结果在图书借阅查询页面输出还书的描述如表3.3所示。表3.3图书归还描述图书归还管理功能描述访问的数据库表进行的操作产生的结果结果存储位置或输出对读者归还图书进行基本操作和信息管理图书信息表:book学生信息表:stude nt读者信息表:reader对读者借阅图书进行管理读者借阅成功,系统对借阅信息进行记录结果存储在图书归还表(book)中3.5 账户管理模块功能该模块主要包含密码修改,读者账户管理,根管理员功能
34、三个子模块密码修改的描 述如表3.4所示。功能描述访问的数据库表进行的操作产生的结果结果存储位置或输出表3.4密码修改描述密码修改对已登录系统的账户进行密码修改操作管理员信息表:login修改本账户密码修改成功,旧密码将被新密码替换结果存储在管理员信息表(login)中读者账户管理的描述如表3.5所示表3.5读者账户管理描述读者账户管理功能描述对读者账号进行基本操作和信息管理访问的数据库表读者信息表: reader进行的操作产生的结果结果存储位置或输出增加、删除读者账号操作成功,系统对读者账号信息进行记录或修改结果存储在读者信息表(reader)中根管理员功能的描述如表3.6所示。表3.6根管
35、理员功能描述根管理员功能功能描述对管理员账号进行基本操作和信息管理访问的数据库表管理员信息表:login进行的操作产生的结果增加、删除管理员账号操作成功,系统对管理员账号信息进行记录或修改结果存储位置或输出结果存储在管理员信息表(login)中3.6查询模块功能该模块主要包含所有藏书,已借图书,图书查询三个子模块。所有藏书的描述如表 3.7所示。表3.7所有藏书描述所有藏书功能描述对图书馆藏书进行查询访问的数据库表图书信息表:book进行的操作查询图书馆所有藏书产生的结果结果存储位置或输出操作成功,系统对所有图书信息进行显示结果存储在图书信息表(book)中已借图书的描述如表3.8所示已借图书
36、功能描述对已借图书进行查询访问的数据库表图书信息表:book进行的操作查询已借图书产生的结果操作成功,系统对已借图书信息进行显示结果存储位置或输出结果存储在图书信息表(book)中表3.8已借图书描述图书查询的描述如表3.9所示表3.9图书查询描述图书查询功能描述对图书名进行模糊查询筛选出需要的图书访问的数据库表图书信息表:book进行的操作按图书名查询所需图书产生的结果结果存储位置或输出操作成功,系统对筛选图书信息进行显示结果存储在图书信息表(book)中第4章数据库设计4.1数据库设计概述数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节 对数据库的设计进行专门阐述
37、。数据库是数据管理的最新技术。十多年来数据库管理系统已从专用的应用程序发展成 为通用的系统软件。由于数据库具有数据结构化,最低冗余度,较高的程序与数据独立 性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上 的。因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中 心的新阶段。这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据 的利用性和相容性,提高了决策的可靠性。目前,数据库已经成为现代信息系统不可分割 的重要组成部分。数据库技术也是计算机领域中发展最快的技术之一
38、。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数 据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据 库设计的基础之 上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据 库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用 户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符 合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不 包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间, 同时加快了增、
39、册h改的速度10o整个系统所包括的信息有图书信息、用户信息、管理员信息、图书状态信息。可将这 些信息抽象为下列系统所需要的数据项和数据结构:(1)图书信息(图书号,图书名.单价,作者,出版社,入库时间,借阅者);(2)管理员信息(用户名,密码);(3)学生信息(用户名,密码);(4)借阅卡信息(卡号,密码)。注:带下划线表示主键。在这里使用E-R图描述了图书借阅管理系统的数据模型。图书借阅管理系统E-R图描述了该系统所涉及到的实体以及他们之间的关系。设计规划出的实体有:图书信息实 体、学生信息实体、管理员信息实体。具体结构如图4.1所示。图4.1数据库E-R图4.2数据库各表的设计4. 2.1
40、图书信息表结构设计(book表)图书信息表主要用于存储图书馆中所藏图书的相关信息,其中的相关信息是在图书入 库时由图书管理员进行添加完善,此表主要用于读者和图书管理员对馆中图书的查询,系 统用户根据图书的某个属性进行查询,便可得知图书的其他相关信息。表的具体结构如表4.1所示。表4.1图书信息表结构字段名称数据类型字段长度可否为空说明bookNumvarchar45No(Key)图书号bookNamevarchar45Yes图书名pricevarchar45Yes单价authorvarchar45Yes作者pressvarchar45Yes出版社timel nvarchar45Yes入库时间b
41、orrowervarchar45Yes借阅者表4.1在数据库中对应的视图如图4.2所示噎茗主町宠沁丞33花开伊吕波 445Fate zero552014-0442 21:03:19£5 book ©library (lo«lhost_3306)-口导入向导口导出向导W籀远向导旺网搐n邑眸查看凸备注Ill十六进制氟圈醪* bookNum bookMamepriceauthorpresstimeln舞1112014-04-05 20: 59a2轻言2222014-04-03 20:20:31文件漏辑壹寿窗口鞠助borrowerhy hy3432014-04-12 21
42、:00:3142014-04-12 21:01:21图4.2数据库book表DDL信息:CREATE TABLE book,('bookNum' varchar(45) default NULL,'bookName' varchar(45) NOT NULL default ”,'price' varchar(45) default NULL,'author' varchar(45) default NULL,'press' varchar(45) default NULL,limeln1 timestamp NU
43、LL default NULL,borrower' varchar(255) default NULL,PRIMARY KEY (,bookName,)ENGINESnnoDB DEFAULT CHARSET=utf8 4. 2. 2管理员信息表结构设计(I og i n表)此表的设计是为了储存管理员信息,根据管理需求的不同对其权限进行的设置,用于 规定不同类型管理员的管理权限。表的具体结构设计如表4.2所示。字段名称数据类型字段长度可否为空说明Readldvarchar45No(Key)用户名readPasswdvarchar45Yes密码5 reader ©library
44、 docalhast_3306)表文件 确 音看 奁口 麹助表4.3在数据库中对应的视图如图4.4所示。2linn3minhy minu导入向导I I导出向导L筛选向导readedD readPasswd图4. 4数据库reader表DDL信息:CREATE TABLE Yeader1 ('readerlD' varchar(45) NOT NULL default ”,YeadPasswd' varchar(45) default NULL,PRIMARY KEY ('readerlD')ENGINESnnoDB DEFAULT CHARSET=utf
45、84.2.4借阅卡表结构设计(student表)stuNum号码都借阅卡表的设计是为了绑定学生信息标识借阅书籍,其中学生 是唯一的。表的具体结构设计如表4.4所示。表4. 4学生卡信息表结构字段名称数据类型字段长度可否为空说明stuNumvarchar45No(Key)卡号stuPasswdvarchar45Yes密码表4.4在数据库中对应的视图如图4.5所示上 J student ©library (localho£t_53D6j 表文件 第辑 查看 窗匚暑异入向号5导出向髓选向导stuNum sWPasswdlinnlinn min图4. 5数据库student表DDL
46、信息:CREATE TABLE 'stude nt'(StuNum* varchar(45) NOT NULL default ”,tuPasswd' varchar(45) default NULL,PRIMARY KEY CstuNum1)ENGINES nn oDB DEFAULT CHARSET=utf8第5章基于JAVA的图书馆管理系统的实现5.1 用户登录当用户运行图书管理系统时,会出现的一个用户登录界面。用户输入正确的用户名和 密码,即登录成功,系统会根据用户的身份进行相应权限划分:root管理 员权限为最高权 限,拥有root权限的管理员能进行所有操作。
47、拥有管理员权限的操作员能对图书信息,读 者信息,借书还书等进行相应的操作。如果登录信息有 错误,则系统提示用户名或密码错 误的信息,并且无法进入登录后的主操作页面,只能点击进入查询系统”进行所有藏书 查询”和查询图书”操作冏0用户登录流程图如图5.1所示。开始图5.1登录系统流程5.1.1 登录页面图书借阅管理系统的登录页面如图5.2所示题医书菅奢统Q11欢迎登陆图5.2登录页面登录界面部分代码:public void confirm。验证用户和密码是否正确Database db = new Database 0;db.dbCo n();连接数据库tryStri ng un ame = use
48、r_ name.getText().trim();Stri ng passwd = pass_word.getText().trim();String query = "select * from login where uname=H,+ un ame + ,H and passwd=" + passwd + ,fHResultSet rs = db.stmt.executeQuery(query);if(rs. next()Mai nWin mai nWin = new Mai nWin (u name);mai nWin .setVisible(true);this.
49、hide();db.dbClose(); 关闭数据库连接 elseJOptionPane.showMessageDialog(null, ”用户名或密码错误!提示!JOptio nPan e.YES_NO_OPTION);return;)catch(SQLExcepti on g)System.out.println(HE Code:" + g.getErrorCode();System.out.pri ntlnf'E M:" + g.getMessage();JOptionPane.showMessageDialog(nullJ登录失败! ”);5.1.2 登录后
50、的主页面登录后的主页面如图5.3所示。图5.3主页面5.2 退出图书管理系统当用户输入正确的用户名和密码登录到主页面时,点击第一行的文件-退出或第二行最后一列的退出”即可退出图书管理系统闻。退出页面如图5.4所示。图5.4退出页面退出图书管理系统部分代码如下:if(source = exititem | source = exitButt on)int selectio n = JOptio nPan e.showC on firmDialog( null,"确定要退出吗? ”提醒! ”, JOptio nPan e.OK_CANCEL_OPTION,JOptio nPan e.WA
51、RNING_MESSAGE);if(selectio n = JOptio nPan e.OK_OPTION)System.exit(O);5.3 管理图书当用户输入正确的用户名和密码登录到主页面时,按需求点击第一行的查看中的子 按钮或第二行按钮,即可得到所需功能。5. 3.1图书入库当用户输入正确的用户名和密码登录到主页面时,点击第一行的管理-图书管理-图 书入库”或第二行第三列的入库”,会弹出一个图书入库”的可编辑界面,输入各行信 息点击确认即可加入图书(其中价格为数字,整数小数皆可)。图书入库流程图如图5.5所示。开始*输入数据 是否合法是写入数据结束图5.5图书入库流程图书入库界面如图
52、5.6所示图5.6图书入库页面图书入库部分代码:public void in sertRecord()Date date = new Date();DateFormat df = new SimpleDateFormat(f,yyyy/MM/dd HH:mm:ssH);String time = df.format(date);System.out.pri ntln (time);Database db = new Database();db.dbCo n();tryStri ng s = "in sert into book values。" + book_ nu m.g
53、etText() + book_ name.getText() + price.getText() + author.getText() + 7 + press.getText() + 7 + time + 二 null)”;查询输入的图书号是否在数据库中存在Stri ng query = Hselect * from book where bookNum=,n + book_ num.getText() + ",M;ResultSet rs = db.stmt.executeQuery(query);/ 返回查询结果集boolean moreRecords = rs.n ext()
54、;/ 判断结果集是否有数据if(moreRecords)JOptionPane.showMessageDialog(this,” 图书号已经被”+ ”使用,请重新输入)db.dbClose();book_ nu m.setText("");return;)elseint in sert = db.stmt.executellpdate(s);if(i nsert = 1)JOptionPane.showMessageDialog(null,”图书信息录入成功!”);book_ nu m.setText("");book_ name.setText(,n);price.setText("n);author.setText(',n);press.setText("");Str
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026上海市信息安全测评认证中心招聘2人备考题库【典型题】附答案详解
- 2026海南海口市美兰区校园招聘教师45人备考题库(一)附完整答案详解【夺冠】
- 2026江苏盐城市滨海县校园招聘教师76人备考题库含答案详解【达标题】
- 2026云南临沧市耿马孟康中医医院招聘6人备考题库参考答案详解
- 2026云南白药集团春季校园招聘备考题库及答案详解【全优】
- 2026中国移动通信集团四川有限公司青神分公司招聘12人备考题库附答案详解【考试直接用】
- 2026广西柳州市鱼峰区洛埠镇卫生院招聘2人备考题库含完整答案详解(网校专用)
- 2026江苏镇江市卫生健康委员会所属镇江市第一人民医院招聘32人备考题库及参考答案详解【基础题】
- 2026云南玉溪易门县教育体育局招聘后勤辅助人员10人备考题库含完整答案详解(有一套)
- 2026湖北黄石市大冶市事业单位统一招聘118人备考题库【巩固】附答案详解
- (高清版)DG∕TJ 08-110-2021 餐饮单位清洁设计技术标准
- 年产200吨高纯金属铯铷项目报告书
- 煤矿各级各岗位人员职业病防治责任制
- (高清版)DB11∕T2370-2024生态修复树种选择技术规范
- 2025新人教版七年级下册英语 Unit 2知识点梳理及语法讲义(答案版)
- 见证取样送检计划方案
- (新版)多旋翼无人机超视距驾驶员执照参考试题(附答案)
- 2025年包钢(集团)公司招聘笔试参考题库含答案解析
- 【公开课】多姿与多彩(生活色彩)课件高中美术人教版+(2019)+选择性必修1+绘画
- 房产销售人员劳动合同范本专业版
- 《植物生产与环境》考试复习题及答案
评论
0/150
提交评论