计算机数据库设计毕业论文分析_第1页
计算机数据库设计毕业论文分析_第2页
计算机数据库设计毕业论文分析_第3页
计算机数据库设计毕业论文分析_第4页
计算机数据库设计毕业论文分析_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计(论文)题 目: _XXXXXXXXX_学院:XXXXXXXX _专业:XXXXXXXXX _班级:XXXXXX _学生姓名:XXXXXXXXXX 学号:XXXXXXXX完成时间:XX 年 XX 月 XX 日摘要:.31引言 .31.1图书管理的现状 .31.2现有图书管理系统的概述 .41.3选题的目的、意义 .41.4图书管理系统的可行性分析 .51.5系统开发运行环境 .52图书管理系统开发相关技术的介绍 .62.1 JAVA的介绍 .62.1.1 JAVA的优势介绍 .62.1.2 JAVA的特点 .62.2My SQL 概述 .72.3 Web技术 .82.3.1浏览器/服务

2、器(Browser/Server)结构 .82.3.2 IIS服务器技术 .83系统总体设计分析 .93.1系统需求分析 .93.2系统实现的目标 .93.3系统功能模块设计 . 93.4系统功能结构图 .103.5系统流程图 .124数据总体结构设计 .134.1数据库概念结构设计 .134.2数据库逻辑结构设计 .144.3图书管理系统的系统 E-R图.164.4数据表设计 .175图书管理系统详细设计 .195.1系统流程分析 . 195.2主要模块的运行 .195.2.1登陆界面 .195.2.2图书信息管理模块 .205.2.3图书借还信息模块 .215.3系统开发的遇到的相关问题及

3、解决 .225.3.1图书管理系统索引 .225.3.2如何验证输入的字符串 .225.3.3自动计算图书归还日期 .235.3.4系统登陆验证码的实现 . 236结论 .266.1主要研究内容及成果 . 2726.2今后进一步研究方向 .27参考文献.273学校图书管理系统的开发 摘要:图书管理系统是智能办公系统 (IOA) 的重要组成部分, 因此,图书管理系统也以方便、 快捷的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减 轻工作人员以往繁忙的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。 从而使人们有更多时间来获取信息、了解信息、掌握信息。其

4、开发主要包括后台数据库的建立 和维护以及前端应用程序的开发两个方面。采用 MySQL5.0 数据库作为后台数据库、 JAVA 编 程语言作为前台开发工具, 通过对数据库技术进行了较深入的学习和应用, 主要完成书目检索、 读者管理、借阅管理、图书管理、用户维护、系统维护等系统功能。系统运行结果证明,本文 所设计的图书管理系统可以满足学生和教师借阅者、图书管理员两方面的需要,达到了设计要 求。关键词: 图书管理;系统设计;信息; JAVA ;MySQL5.01 引言随着计算机及网络技术的飞速发展, Internet/Intranet 应用在全球范围内日益普 及,当今社会正快速向信息化社会前进,信息

5、系统的作用也越来越大。图书馆在正 常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信 息,还书信息。因此图书管理信息化是发展的必然趋势。用结构化系统分析与设计 的方法,建立一套有效的图书信息管理系统,可以减轻工作,将工作科学化、规范 化,提高了图书馆信息管理的工作质量因此根据图书馆目前实际的管理情况开发一 套图书管理系统是十分必要的。1.1图书管理的现状 一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆的借书 和还书过程,想必大家都已很熟悉。在计算机尚未在图书管理系统广泛使用之前, 借书和还书过程主要依靠手工。一个最典型的手工处理还书过程就是:读者将要借 的书

6、和借阅证交给工作人员,工作人员将每本书上附带的描述书的信息的卡片和读 者的借阅证放在一个小格栏里,并在借阅证和每本书贴的借阅条上填写借阅信息。 这样借书过程就完成了。还书时,读者将要还的书交给工作人员,工作人员根据图 书信息找到相应的书卡和借阅证, 并填好相应的还书信息, 这样还书过程就完成了。 随着近年来信息技术及计算机网络技术的不断发展 , 图书馆也先从传统的图书馆发 展到自动化图书馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来 越现代化,人们查找资料也更加方便。对于一些小图书馆和一些图书室来说,由于 工作人员比较少,长期以来,作为图书馆的主要工作 图书借阅一直未能很好地开 展

7、。在平常的图书借阅工作中 , 由于大部分读者不熟悉图书馆藏书,且对图书排架 分类的不了解,往往花费很长时间才能找到其所需的书。为提高管理效率,更好地 为读者服务,利用已有的办公局域网络条件,将馆藏书籍做成基于 WEB 的查询系 统,实现图书在一个单位的网络内甚至 Internet 上查询,可使图书查询和借阅变得 更加方便快捷,从而使图书室的工作效率得到明显提高。传统的图书管理模式其最大的特点是手工;首先要把买来的图书资料登记到资 4料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡片,最后把图 书分类卡片按类别分别放置在文件柜里。对于有学生(教师)证的学生(教师)来 说还要对他们资料

8、作一定的记录。并且在人们来借书的时候,首先持证件者要去存 放图书分类卡片的文件柜里查找想借的书是否在架,如果卡片存在,再按照图书分 类卡片在相应的书架上找到需要的图书, 然后登记持证件者的借还书时间和在书签 条上写下借还书记录,之后把借书证留在那里;还书的时候,相对应的消去出借记 录;这样做起来比较麻烦,比较费时间。传统图书管理的特点是一直以来,中小型 书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书 档案、会员档案。这种管理方式存在着诸多缺点,如:手续繁琐、工作量大、效率 低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。1.2现有图书管理系统的概述

9、在试用了一些个图书管理系统和查阅了大量相关资料文献的基础上,发现那些 系统在几个方面已经不符合时代的要求,由于设计人员及其所用的工具的不同,有 Visual Basic6.0、Visual ForPro6.0、Power Builder 等,再加上这些图书管理系统设计 的时间也不一样,所用具体场合也有区别,因此在功能上除了图书资料管理所需的 基本功能之外也有所不同。经过比较总结他们都实现了以下图书管理的基本功能: 1、图书检索模块:是图书管理系统的重要模块之一,是读者快速查询图书的途径。 2、图书管理模块:是图书管理员操作模块,读者是无权进入的。本模块由借出图 书登记、归还图书登记和续借图书登

10、记子模块构成。 3、数据维护模块:是由图书 管理员控制的模块,它由增加、修改和删除读者,增加、修改删除图书,浏览修改 读者、浏览修改图书等程序组成。 4 、数据统计模块:由读者统计、图书统计、借 出图书分类统计、到期末归还图书读者统计几部分组成。这些系统解决了以前的那 种管理方式所存在着的诸如手续繁琐、工作量大、效率低下、出错率高等缺点, 设计出的系统能使读者快速检索到自己喜爱的书,图书管理员能减轻工作量。但是鉴于开发工具和开发当时的科技发展水平所限,再加上历史发展到今天, 人们的生活环境已经发生了改变,大家对于图书查询这方面的要求也更高。比如在 一个局域网内,大家希望能在本台电脑上就能查找自

11、己想要的图书,而不用跑到图 书馆或图书室里去用那里的电脑查询,这就需要一个网络化的联机查询系统。1.3选题的目的、意义随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。针对 中小型图书馆或图书室管理落后的情况,设计实现一个图书信息管理系统,通过与 计算机的结合使用对中小型图书馆或图书室的各种图书信息进行管理可以给管理 员和用户带来以下不同的方便:检索迅速、查找方便、可靠性高、存储量大、保密 性好、寿命长、成本低等。这些优点能够极大地提高工作效率,也是图书馆等部门 5管理科学化、正规化的重要标志之一。而且计算机管理的成本不断降低。因此,开 发一套这样的中小型图书管理软件已经很有必要,

12、并且实现研究服务于实践的原 则。1.4图书管理系统的可行性分析 本次毕业设计题目: “学校图书管理系统的开发”主要目的是利用数据库软件 编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系 统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的 数据库数据管理新模式。 在对图书、读者的管理, 其实是对图书、 读者数据的管理。 本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。本系统的设计主要 从以下几方面做起:系统业务流程分析、系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库知识有足够认识,并深入的了解Java的使用和管理系统的相关知识。

13、在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、 教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信 息管理与数据处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应 用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用 的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并 且现代的信息管理系统几乎都以数据库技术作为核心。现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易 出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究 的目的是用最小的代价在尽可能短的时间内确定问题是否

14、能够解决。系统的可行性 分析有以下几个方面:(1) 技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、方便查 询、借阅管理等。(2) 经济可行性:系统建设不需要很大的投入、可缩减人力投入。(3) 运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费的 资源非常的小。(4) 从各种社会因素可行性分析:可降低工作人员工作强度,提高效率,会 得到学校工作人员的一致同意的。综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。1.5系统开发运行环境系统开发环境: MyEclipse Java Enterprise 6.5系统开发语言: Java运行平台: Windows X

15、P 数据库: MySQL5.0Web 艮务器:Tomcat6.062 图书管理系统开发相关技术的介绍2.1 JAVA 的介绍2.1.1 JAVA 的优势介绍Java已用动态的交互应用软件使 Wei栩栩如生。它使开发人员具有编写一次 到处运行TM的巨大能力。而且,借助其JavaAPI及其编程语言上的Java虚拟机, 它已产生一种分布信息的崭新模式。这种模式叫做 Java企业计算,正在帮助各企业 以各种不同的方法取得竞争优势。网管和控制已大大简化。软件分配基本上是免费 的,而且立即可实现。电子贸易已获得。占有成本大幅度降低。信息和应用软件到 处可存取。Java建立在简单的前提基础上,即所有微处理器

16、都应讲同一种语言 -所有内部采用芯片的产品都应能一起工作,无缝而方便地共享信息。它已经改变企 业和个人同 Internet 大交道的方式。现在,它正在对消费类产品产生明显的影响, 而且从总体上更加深刻地影响企业计算。借助Java,您可自由自在地使用您已拥有的硬件和软件。这是因为 Java是独立 于平台的。 它还可使您超越企业计算, 使应用软件在便携式计算机、 信息亭、电视、 蜂窝电话和其他大量设备上运行。全世界的公司都已发现Java数不胜数的用途。所有用途可从其无可比拟的能 力,即提高可靠性、安全性和简化各种不同计算产品和环境的能力中受益非浅,而 且节省的时间和费用十分可观。Java无处不在。

17、它已拥有几百万个用户,其发展速度要快于在它以前的其他任 何一种计算机产品。它可位于任何地方,而且能到处运行。Java正在迅速被用做传播信息的事实上标准,这是因为它既可给企业,也可给最终用户带来似乎数不清的 好处。2.1.2 JAVA 的特点面向对象:其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作 是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类 事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为 中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用 公式表示,过程式编程语言为:程序 =算法 +数据;面向对象编程语言为

18、:程序 =对 象+消息。所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对 象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装, 就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象 是支持封装的手段,是封装的基本单位。Java语言的封装性较强,因为Java无全程 7变量,无主函数,在Java中绝大部分成员是对象,只有简单的数字类型、字符类型 和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象 交互操作。可移植性:就是在这个系统上作的程序经过

19、一次编译后可以移植到别的系 统上解释执行,只要经过简单的粘贴和复制就行了,不影响程序的效果安全性:在iSeries 服务器上运行的大多数Java(TM)程序是应用程序, 而不是applet ,所以“砂箱”安全性模型对它们不起限制作用。从安全性的观点 看,Java应用程序所受的安全性限制与iSeries 服务器上的任何其它程序相同。 要在iSeries服务器上运行Java程序,您必须对集成文件系统中的类文件具有权限。程序一旦启动,它就在该用户权限控制下运行。您可以使用沿用权限来访问具有运行程序的用户的权限和程序拥有者权限的对象。沿用权限临时地将用户原 先无权访问的对象的权限授予用户。并发性:JA

20、V/支持多线程技术,就是多个线程并行机制,多线程是 Java的一个 重要方法,特别有利于在程序中实现并发任务 Java提供Thread线程类,实现了多线 程的并发机制然而,程序的并发执行必定会出现多个线程互斥访问临界资源的局 面,因而并发系统解决的关键就是对临界资源的管理和分配问题,而在进行临界资 源分配时有两方面需要考虑,即安全性和公平性.文中首先讨论了多线程并发系统 中的安全性与公平性问题,指出安全性与公平性在并发系统中访问临界资源时的重 要性.并通过火车行驶单行隧道的实例,演示各种条件下的行驶情况来进一步说明 该问题2.2MySQL概述MySQI是一个小型关系型数据库管理系统,开发者为瑞

21、典MySQAB公司。在2008 年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途, 没有任何人抱乐观的态度目前MySQL被广泛地应用在In ternet 上的中小型网站 中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中 小型网站为了降低网站总体拥有成本而选择了MySQL乍为网站数据库。它具有以下特点:(1) .使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。(2) .支持 AIX、FreeBSD HP-UX Linux、Mac OS Novell Netware、OpenBSDOS/2 Wrap、Solar

22、is、Windows等多种操作系统。(3) .为多种编程语言提供了 API。这些编程语言包括 C、C+ Python、Java、Perl、PHP Eiffel、Ruby和 Tcl 等。(4) .支持多线程,充分利用CPU资源。(5) .优化的SQL查询算法,有效地提高查询速度。(6) .既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够8作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS 等都可以用作数据表名和数据列名。(7).提供TCP/IP、ODB(和JDBC等多种数据库连接途径。(8) .提供用于管理、检查、优

23、化数据库操作的管理工具。(9) .可以处理拥有上千万条记录的大型数据库。2.3 Web技术2.3.1浏览器/服务器(Browser/Servei)结构随着Web和 In ternet计算环境的发展,将使企业能够以更快的速度、更低的费用 去创建和布置企业的应用系统,因而,普遍认为C/S架构将会被B/S结构取代。Internet 为数据库应用系统提供了新的机会,采用B/S结构,客户机上只要安装一个浏览器 (Browser),如 Netscape Navigato 或 In ternet Explores;中间层采用 Web 艮务器,它接受 客户端的请求,将其转换为SQL语句,通过ODBC或其他手段

24、传给数据库服务器, 并将数据库服务器返回的结果用HTML文件格式传回给客户机。客户机的要求大大 降低,大部分程序在服务器端执行。采用3层体系结构的Web应用程序由Web浏览器、 Web服务器和数据库3部分组成,如图2-1所示。Web浏览器与Web艮务器之间的通信 仍然遵循HTTP,Web艮务器与数据库之间的通信遵守 CGI( Common Gateway In terface)或者Server API规范。在采用三层体系结构的 We应用程序中,We浏览器 向Web艮务器请求某个HTM文档或者请求执行某个CGI脚本程序。Web艮务器根据Web 浏览器请求的是某个CGI程序或者API程序,Web服

25、务器则执行(或调用外部程序执 行)该程序,然后将程序执行结果返回给 We浏览器。习惯上,我们把采用这种体系 结构的Web网站称作“动态网站”。目前,互联网中绝大部分网站和大多数 We应用 系统都采用了这种体系结构。2.3.2 IIS 服务器技术Tomcat 是 Apache 软件基金会(Apache Software Foundatior) 的 Jakarta 项目 中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了 Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现, Tomcat 5支持最新的Servlet 2.4和JSP 2

26、.0规范。因为Tomcat技术先进、性能稳 定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成 为目前比较流行的 Web应用服务器。目前最新版本是 6.0。Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好, 支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完 善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。933.1Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很 多的场合下被普遍使用,是开发和调试 JSP程序的首选。对于一个初学者来说,可 以这样认为,当在一台机器上配置好 Apach

27、e服务器,可利用它响应对 HTML页 面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的, 所以当你运行tomcat时,它实际上作为一个与 Apache独立的进程单独运行的。这里的诀窍是,当配置正确时, Apache为HTML页面服务,而Tomcat实际 上运行JSP页面和Servlet。另外,Tomcat和IIS、Apache等 Web服务器一样,具 有处理HTML页面的功能,另外它还是一个 Servlet和JSP容器,独立的Servlet容 器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务系统总体设计分析系统需求分析随着

28、互联网的爆炸性发展,人们越来越习惯于利用网络来实现所需的服务, 网络已深深影响到人们生活的各个方面。另外,传统的图书馆不能满足一部分现代 人的需要,而电子阅览室,由于其不受时间与空间的限制同时又具有传统图书馆的 大部分功能,能够满足各类用户的常规与特殊需求,而且其方便快捷,实现技术又 比较成熟,因此受到当代人的喜爱。该系统主要分为两部分:读者部分和管理员部分。为了方便读者查找自己感兴 趣的主题进行阅读,要将图书按照内容进行分类。读者可以按照类别进行查找,逐 级浏览、可以查看自己的信息。本系统还可对用户的账号和书目的阅读权限进行管 理。管理员需要给用户分配用户名和密码,及设定用户的级别,还为用户

29、提供图书 的排行榜让用户能知道那些图书受到大家的欢迎。3.2系统实现的目标学校图书管理系统的开发主要要实现的目标有以下几个方面:(1) 界面设计友好、美观。(2) 数据存储安全、可靠。(3) 信息分类清晰、准确。(4) 强大的查询功能,保证数据查询的灵活性。(5) 实现对图书借阅和归还过程的全程数据信息跟踪。(6) 提供图书借阅排行榜,为图书管理员提供了真实的数据信息。(7) 提供灵活、方便的权限设置功能,使整个系统的管理分工明确。(8) 具有易维护性和易操作性。3.3系统功能模块设计(1)系统设置模块:添加删除管理员、设置管理员的权限、说明图书存放书架10信息添加删除书架信息。(2) 读者管

30、理模块:添加删除不同类型的读者及注明可借图书的数量、添加删 除读者的档案。(3) 图书管理模块:添加删除不同类型的的图书及注明图书可借的天数库存数 量、添加删除图书的档案。(4) 图书借还模块:可查询读者借阅和归还图书的信息及图书的现有库存量。(0035)系统查询模块:可根据不同的条件(条形码、书名、类别、作者、书架、 出版社)查询读者需要的图书、读者可根据不同的条件(图书条形码、图书名称、 读者编号、读者名字、到期时间)查询自己借阅图书信息。(6)排行榜模块:可以让读者知道图书借阅的排行榜及读者借阅的排行榜。3.4系统功能结构图根据图书管理系统的实际需求,可以将图书管理系统划分为系统设置、图

31、书管 理、读者管理、图书借还、系统查询、排行榜 6个部分各个部分的具体功能的系统 功能结构图如图3-1所示。图书管理系统11图3-1系统功能结构图图书借阅系统完成用户的借书过程其数据流图如图3-2所示图3-2借阅系统的数据流图123.5系统流程图图书管理系统的流程是用户先输入自己的帐号密码及系统显示的验证码进入 系统如有一项不符合则不能进入系统,成功登陆系统后系统根剧登陆的帐号信息从 数据库中的数据进行对比判断是读者还是管理员,如果是读者则能进行信息查询, 及修改自己的相关信息,查询到自己所需要的图书就能通过管理员进行借阅图书、 骨理员图书档寨入库滝单3-4图书档案管理数据流图13归还图书也是

32、通过管理员完成的。如果不是读者而是管理员,那管理员可以进行相 关信息的查询、添加删除图书及读者的所有信息、设置相应的权限、为图书更新排14行榜的信息、以及完成读者的图书借阅与归还。图书管理系统的系统流程图如图3-64数据总体结构设计4.1 数据库概念结构设计数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这个阶段不用考虑 所采用的数据库管理系统、操作系统类型、机器类型等问题。这阶段可用的工具很 多。用的最多的是E-R图(Entity-Relation,实体-关系图),另外还有许多计算机辅助 工具(Computer Ai

33、ded Software Engin eeri ng CASE)可以帮助进行设计。本系统采用 了 E-R图的方法进行数据库概念结构设计。E-R图是描述数据实体关系的一种直观 描述工具。这种图中有:(1) 实体:用方框表示,方框内为实体的名称。154-1图书 信息 实体 属性图(2) 实体的各种属性:用椭圆表示,椭圆内为属性名称。使用线段将其和响应的 实体连接起来。(3)实体之间的联系:用菱形表示,菱形内为联系的名称。 实体和实体之间的联系较多,比较常见的联系有l:1,l:N 和M:N这三种。4.2数据库逻辑结构设计概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能 进行数据库

34、应用的设计。也就是要将概念上的结构转化为数据库系统所支持的实际 数据模型。第一种转化是将实体转化为关系表。这种转化较简单,需要将实体的属性定义 为表的属性即可。第二种转化是联系的转化。即将各个实体之间的联系转化为表格之间的关系, 如外部键的定义。在上面工作的基础上归纳出人员管理数据库表格的组成之间的联系等等。该数据库系统具有以下方面的特点:结构合理,对一个人员建立多条记录。所建立的数据冗余度小,独立性强。建档、修改、查询、统计快速而准确。保密性好、可靠性好。图书管理系统中要有图书,图书是图书管理系统中密不可分的部分,因此要创建一图书信息实体,用来保存图书的详细信息。图书信息实体属性图如图4-1

35、所示。16读者是图书管理系统重要组成部分,这里创建了一个读者信息实体,用来存储 读者的详细信息。读者信息实体 E-R图如图4.2所示。图4-2 读者信息实体属性图图书的借阅和归还是图书管理系统中的一项重要的环节,开发图书管理系统就是为了方便读者对图书的借阅和归还,因此要建立一个图书借还实体,用来保存读 者对图书的借阅和归还的详细信息。图书的借阅和归还实体属性图如图4-3所示。图4-3读者借还实体属性图图书管理系统为了增加系统的安全性,管理员只有在系统登陆模块验证通过后 才能进入管理员的操作界面,因此套在数据库中创建一个存放登录用户信息的管理 员实体。管理员实体属性图如图4-4所示。17管理修改

36、删除添加类型编号名称密码编号管理员图4-4 管理员实体属性图4.3图书管理系统的系统E-R图图书管理系统的系统E-R图如图4-5所示。18图4-5图书管理系统的系统 E-R图4.4数据表设计本系统使用的数据库管理系统为 MySQL5.0。数据库中的表有管理员信息表、 图书信息表、读者信息表、管理员权限表、图书借阅归还表等。图书管理员基本信息表tb admin,如表4-6所示字段名数据类型长度主键描述idvarchar50是管理员编号n amevarchar50否管理员名称pwdvarchar30否密码表 4-6 tb_admin(管理员)表读者详细信息表 tb_reader , 如表4-7所示

37、。字段名数据类型长度主键描述idvarchar30是读者编号n amevarchar50否读者名称sexchar4否性别typevarchar50否读者类型birthdaysmalldatetime4否生日paperTypevarchar20否证件类型paperNumvarchar30否证件号码telvarchar20否电话emailvarchar50否E-mailcreateDatesmalldatetime4否注册日期opervarchar30否操作员remarktext16否备注borrow numint4否借阅次数表4-7 tb_reader(读者信息)表图书详细信息表 tb_book

38、kifo, 如表4-8所示。字段名数据类型长度主键描述Bookcodevarchar30是图书条形码19book namevarchar50否图书名称typevarchar50否图书类型autorvarchar50否作者tran slatorvarchar50否译者pub namevarchar100否出版社pricemoney8否价格pageint4否页码bcasevarchar50否书架storagebigi nt8否存储数量in Timesmalldatetime4否入馆时间opervarchar30否操作员borrow numint4否被借次数表4-8tb_bookkifo(图书信息)

39、表图书借阅和归还信息表tb_borrowandback ,如表4-9所示。字段名数据类型长度主键描述idvarchar30是借书编号readidvarchar20否读者编号bookcodevarchar30否图书条形码borrowTimesmalldatetime4否借书时间ygbackTimesmalldatetime4否应该还书时间sjbackTimesmalldatetime4否实际还书时间borrowopervarchar30否借书操作backopervarchar30否还书操作isbackbit1否是否归还表4-9 tb_borrowandback(图书借阅和归还信息)表权限信息表t

40、b_purview,如表4-10所示。字段名数据类型长度主键描述idvarchar50是用户编号20sysetbit1readsetbit1booksetbit1否系统设置否读者管理否图书管理syaquerybit1否系统查询表4-10 tb_purview (权限信息)表5图书管理系统详细设计5.1系统流程分析根据开发图书管理系统的需求分析,本系统设计了三种用户,分别为系统管理 员、教师和学生。系统要求有系统管理员用户,我们设定系统管理员,当系统管理员使用帐户登 录后,需要查看有关图书的一系列的信息,管理员可以通过系统导航菜单进入读者 管理界面、图书管理界面、图书借还界面、系统查询界面、排行

41、榜界面,在读者界 面中,管理员添加和修改学生或教师信息、用户可以查看自己信息,在图书管理界 面管理员可以添加和修改图书信息、用户可查看图书,在图书借还界面完成读者借 书还书的操作,系统查询界面管理员可以查看借出去的图书信息及库存的信息、用 户可以查找自己的所需的图书,排行榜界面主要是可以让用户知道哪些图书受到读 者的喜爱。读者(老师和学生)使用读者帐号登陆系统后,可以查询自己所需要的 图书的信息、也可以查询自己个人的基本信息及图书的借还信息,还能查看排行榜 的信息。读者的借书和还书过程是通过管理员完成的。5.2主要模块的运行5.2.1登陆界面当用户输入用户名、密码,系统自动将输入的信息和相关数

42、据表中的内容进行 比较,如果该用户输入的内容和数据表中的内容相符,则通过验证,此次登录成功;否则登录失败。比较的过程是由浏览器将指令,数据发送到Web服务器,Web服务器通过对数据库进行查询将结果返回到浏览器,从而端显示成功的消息,用户只 有成功登陆系统后才能进行一系列的操作,如下图5-1所示。borrowbackbit1否图书借还图书也a管理系统Llbrery InfommionaaTfiM5-1图书管理系统登陆界面5.2.2图书信息管理模块图书信息管理模块主要分为查看图书信息页面和添加修改图书信息页面,用户可以在查看图书信息页面查看图书的基本信息,管理员也可以看这些信息,并且可以通过单击“

43、添加图书信息”这个超级链接或集合列表中的“详情”超级链接转到添加或删除图书信息界面,并在该页中添家或修改图书信息,如图5-2与5-3所示图5-2 查看图书信息界面8 if L 5工讽(Dana An Guan LI ail nilii nilb i i Ji iiiuillBlliailiaiii 11 I1 ! 1 1 1 辭翹 ii IIII iik II niiiaiiiaiii a融 IIJI i i a I i i JBI iiii4利辭isminc讎珊SOifBl20滥ii图Lflflk满加(修I敢图语/信寢_1条形码:图书名称:图书类型:程序谟计N作者:译若岀版社:价梏:页曜:书

44、架:书架1K库存魏呈:入馆时间:2009-3-31操作员:滋0a倏改取消C 格式为2CO7-CI1-CI1 用户登录:用尸密码:验证玛;215-3 添家或修改图书信息界面图书信息管理模块的实现,主要是使用了Hibernate框架操作数据库技术。Hibernate,通过对jdbc进行封装,对java类和关系数据库进行 mapping,实 现了对关系数据库的面向对象方式的操作,改变了传统的jdbc + sql操作数据的方式,从而使开发人员可以话更多精力进行对象方面的开发。其优点并不只是简化 了数据库操作,更有价值的是对不同的数据库提供了统一操作的接口,使应用程序 的跨数据库开发成为可能。5.2.3

45、图书借还信息模块图书借还管理模块主要分为图书借阅页面和图书归还页面,用户可以在通过这 个模块查看图书的借阅和归还信息。管理员可以在图书通过这个模块来完成读者借 和还书的操作,如图5-4与5-5所示。R3福特璋ixralinn匚疾全手H8程序ift计20|倍测|诱-者所惜阳书止还IH阿。畑全手册2008-1-10 0-00:00200-!-! 0;00 00岀懸社500000U炫全手册2OO8-1-IO OI(:DO2003-1-12 0:00 0C24畫出鹿吐书架15D.OODO图5-4图书的借阅管理L匡己归还读音脸证小测性别:丈读看编号:号妁证证件号码:12205422Z10001确定姓名:

46、证件类軽:学生可憎数凰:区圈书归还倍书号怡阀因间应延时问出点社书架归还JS10DD105全手册2008-1 LOO:Dfl:0020os.i.n o:oofiD书架150J0MD止还阳DOgCW完全手册2008JJD 0:00:00201.12 0:010100蛊孟岀1社 书架L50.0D0D1图5-5 图书归还管理5.3 系统开发的遇到的相关问题及解决5.3.1图书管理系统索引 图书管理系统开发中存在大量的数据和信息检索, 怎样更好的检索数据和信息 L it Ik I勺:催園22操作是保证检索速度的提高和数据的分页显示,主要考虑了以下几个方面:(1) 设计逻辑结构时充分考虑冗余量和可处理性两

47、方面的要求,在接受冗余量的 提下,尽量减少表的连接操作。(2) 关系的大小对查询的影响也是很大的,因此为了提高数据库的查询速度,减 小系的大小和数据量也是必要的。(3) 建立合理的索引结构。索引相当于一个映射机构,将键值转换成相对应的 记录地址,形成索引文件。索引设计是数据库物理设计的基本问题,也是较困难的问题,建立索引可以极大地提高系统的查询速度,但是同时做Insert、 Update、 Delete 操作时会降低速度,因为做这些操作的同时需要更新索引,所以不能对数据库中所有的表都建立索引。 比如满足下列条件之一的不易建立索引:不出现或很少出现的属性或表、属性分布 严重不均的属性、经常更新的

48、属性或表、过长的属性、太小的表等。满足下列条件之一的可以考虑建立索引:主键和外键都建立索引、对于以读为 主或只读的表,只要需要,且存储空间允许,可以减少连接开销、 对于等值查询(即 查询条件以等号为比较符),最好建立索引、对查询范围(即查询条件 , PreferencesJavaCodefor this generatedGenerationCodetype comment go to and Comments存放在缓存内,并出现在界面上顺序是随机的,当用户登陆时输入的验证码要与缓存中的进行对比符合就进入,不符合就不能登陆。系统在提供验证码时候要加入一些干扰的条件的,不过这些人的肉眼是很容易分

49、辨,但机器人程序不能分辨,很好的防止某人利用机器人程序对系统的恶意操作增加了系统的安全性。验证码实现的 关键代码如下: Image.jsp 页面/VerifyImage 验证码类文件importjava.awt.Color;importjava.awt.Font;importjava.awt.Graphics;importjava.awt.Image;importjava.awt.image.BufferedImage;importjava.util.Random;/*/public class VerifyImage public String sRand =public Bufferedl

50、mageimage =n ullpublicString getSRand()return sRand ;25public BufferedImage getImage()return image ;privateVerifyImage()publicstatic finalStr ingVerifyNo =VerifyNo ;public static VerifyImage creatI nsta nce()VerifyImage vi=new VerifyImage();/在内存中创建图象int width=40,height=17;vi. image =newBufferedlmage(width,height,Bufferedlmage.TYPE_INT_RGB );/获取图形上下文Graphics g=vi.image .getGraphics();/生成随机类Ran dom ran dom= new Ran dom();/设定背景色g.setColor( getRa ndColor (200,250);g.fillRect(O,O,width,height);/设定字体g.setFont(new Font(Times New Roman,Font.PLAIN ,12);/ 画边框/ g.setColor( new Color();g.drawR

温馨提示

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

评论

0/150

提交评论