计算机专业毕业论文-图书管理系统_第1页
计算机专业毕业论文-图书管理系统_第2页
计算机专业毕业论文-图书管理系统_第3页
计算机专业毕业论文-图书管理系统_第4页
计算机专业毕业论文-图书管理系统_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

需要代写毕业论文请登录360毕业设计网 或加qq:604664738安徽三联学院专 科 毕 业 论 文题目: 题目 : 学校图书管理系统姓 专 班名 业 级王前波 计算机应用 计应(二)班 王良燕指导教师2010 年12 月 题目: 题目 : 学校图书管理系统的开发摘 要在对 JSP 语言,SQL Server2000 数据库技术以及当今学校图书管理的需求进行了较深入的学习和调查的基础上,设计出了该图书管理系统,该系 统主要实现了图书管理,用户信息及管理信息的管理同时在书籍信息管理中 还包括书籍的更新,书籍的过户和监督卡管理等功能。 本 论 文 主 要 阐 述 了 书 籍 管 理 系 统 的 需 求 分 析 ,功 能 模 块 划 分 ,数 据 库 模 式 分析,并具此设计了基于 c/S 模式的数据库结构和 JSP 程序. 关键词 : JSP;SQL Server2000;ODBC;JavaBean 目录第一节 引言 . 1 1.1 1.2 1.3 1.4 1.5 2.1 图书管理的现状 . 1 现有图书管理系统的概述 . 2 选题的目的、意义 . 2 图书管理系统的可行性分析 . 3 系统开发运行环境 . 4 java . 5第二节 本系统开发相关技术介绍 . 5 2.2 MySql . 7 2.3 Struts2 . 8 2.4 Web 服务器 . 10 第三节 系统总体设计分析 . 12 3.1 系统需求分析 . 12 3.2 3.3 3.4 3.5 4.1 4.2 4.3 4.4 5.1 5.2 系统实现的目标 . 12 系统功能模块设计 . 12 系统功能结构图 . 13 系统流程图 . 15 数据库概念结构设计 . 17 数据库逻辑结构设计 . 17 图书管理系统的系统 E-R 图 . 19 数据表设计 . 20 系统流程分析 . 23 主要模块的运行 . 23 5.2.1 5.2.2 5.2.3 5.3 5.3.1 5.3.2 5.3.3 登陆界面 . 23 图书信息管理模块 . 24 图书借还信息模块 . 25 图书管理系统索引 . 26 如何验证输入的字符串 . 27 自动计算图书归还日期 . 27第四节 数据总体结构设计 . 17第五节 图书管理系统详细设计 . 23系统开发的遇到的相关问题及解决 . 26 5.3.4 6.1 6.2系统登陆验证码的实现 . 28第六节 结束语 . 32 主要研究内容及成果 . 32 今后进一步研究方向 . 32 第一节 引言随着计算机及网络技术的飞速发展, Internet/Intranet 应用在全球范围内 日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。 图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作 用产生的借书信息,还书信息。因此图书管理信息化是发展的必然趋势。用 结构化系统分析与设计的方法,建立一套有效的图书信息管理系统,可以减 轻工作,将工作科学化、规范化,提高了图书馆信息管理的工作质量因此根 据图书馆目前实际的管理情况开发一套图书管理系统是十分必要的。 1.1 图书管理的现状 一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆 的借书和还书过程,想必大家都已很熟悉。在计算机尚未在图书管理系统广 泛使用之前,借书和还书过程主要依靠手工。一个最典型的手工处理还书过 程就是:读者将要借的书和借阅证交给工作人员,工作人员将每本书上附带 的描述书的信息的卡片和读者的借阅证放在一个小格栏里,并在借阅证和每 本书贴的借阅条上填写借阅信息。这样借书过程就完成了。还书时,读者将 要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证, 并填好相应的还书信息,这样还书过程就完成了。随着近年来信息技术及计 算机网络技术的不断发展, 图书馆也先从传统的图书馆发展到自动化图书 馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来越现代化, 人们查找资料也更加方便。对于一些小图书馆和一些图书室来说,由于工作 人员比较少,长期以来,作为图书馆的主要工作图书借阅一直未能很好地 开展。 在平常 的图 书 借阅工 作中, 由于 大 部分读 者不熟 悉图 书 馆藏书 ,且对 图书排架分类的不了解,往往花费很长时间才能找到其所需的书。为提高管 理效率,更好地为读者服务,利用已有的办公局域网络条件,将馆藏书籍做 成基于 WEB 的查询系统, 实现图书在一个单位的网络内甚至 Internet 上查询, 可使图书查询和借阅变得更加方便快捷,从而使图书室的工作效率得到明显 提高。 传统的图书管理模式其最大的特点是手工;首先要把买来的图书资料登 记到资料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡 片,最后把图书分类卡片按类别分别放置在文件柜里。对于有学生(教师) 证的学生(教师)来说还要对他们资料作一定的记录。并且在人们来借书的1 时候,首先持证件者要去存放图书分类卡片的文件柜里查找想借的书是否在 架,如果卡片存在,再按照图书分类卡片在相应的书架上找到需要的图书, 然后登记持证件者的借还书时间和在书签条上写下借还书记录,之后把借书 证留在那里;还书的时候,相对应的消去出借记录;这样做起来比较麻烦, 比较费时间。传统图书管理的特点是一直以来,中小型书店、中小学的小型 图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、会员档 案。这种管理方式存在着诸多缺点,如:手续繁琐、工作量大、效率低下、 出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。 1.2 现有图书管理系统的概述 在试用了一些个图书管理系统和查阅了大量相关资料文献的基础上,发 现那些系统在几个方面已经不符合时代的要求,由于设计人员及其所用的工 具的不同,有 Visual Basic6.0、Visual ForPro6.0、Power Builder 等,再加上 这些图书管理系统设计的时间也不一样,所用具体场合也有区别,因此在功 能上除了图书资料管理所需的基本功能之外也有所不同。经过比较总结他们 都实现了以下图书管理的基本功能:1、图书检索模块:是图书管理系统的重 要模块之一,是读者快速查询图书的途径。2、图书管理模块:是图书管理员 操作模块,读者是无权进入的。本模块由借出图书登记、归还图书登记和续 借图书登记子模块构成。3、数据维护模块:是由图书管理员控制的模块,它 由增加、修改和删除读者,增加、修改删除图书,浏览修改读者、浏览修改 图书等程序组成。 4、数据统计模块:由读者统计、图书统计、借出图书分 类统计、到期末归还图书读者统计几部分组成。这些系统解决了以前的那种 管理方式所存在着的诸如手续繁琐、工作量大、效率低下、出错率高等缺点, 设计出的系统能使读者快速检索到自己喜爱的书, 图书管理员能减轻工作量。 但是鉴于开发工具和开发当时的科技发展水平所限,再加上历史发展到 今天,人们的生活环境已经发生了改变,大家对于图书查询这方面的要求也 更高。比如在一个局域网内,大家希望能在本台电脑上就能查找自己想要的 图书,而不用跑到图书馆或图书室里去用那里的电脑查询,这就需要一个网 络化的联机查询系统。 1.3 选题的目的 、 意义 随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。 针对中小型图书馆或图书室管理落后的情况,设计实现一个图书信息管理系 统,通过与计算机的结合使用对中小型图书馆或图书室的各种图书信息进行 管理可以给管理员和用户带来以下不同的方便:检索迅速、查找方便、可靠2 性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高 工作效率,也是图书馆等部门管理科学化、正规化的重要标志之一。而且计 算机管理的成本不断降低。因此,开发一套这样的中小型图书管理软件已经 很有必要,并且实现研究服务于实践的原则。 1.4 图书管理系统的可行性分析 本次毕业设计题目: “学校图书管理系统的开发”主要目的是利用数据库 软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同 时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基 于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是 对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提 供极大的帮助。本系统的设计主要从以下几方面做起:系统业务流程分析、 系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库知识有 足够认识,并深入的了解 Java 的使用和管理系统的相关知识。在信息时代的 今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大 量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据 处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应用(科 学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用 的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工 具,并且现代的信息管理系统几乎都以数据库技术作为核心。 现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而 且容易出错, 新系统的使用能否可以很好的解决这些问题要看系统的可行性, 可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解 决。系统的可行性分析有以下几个方面: (1)技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、 方便查询、借阅管理等。 (2)经济可行性:系统建设不需要很大的投入、可缩减人力投入。 (3)运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费 的 资源非常的小。 (4)从各种社会因素可行性分析:可降低工作人员工作强度,提高效率, 会 得到学校工作人员的一致同意的。 综上所述通过可行性分析认为新系统的开发方案切实可行, 可进行开发。3 1.5系统开发运行环境 系统开发环境:MyEclipse Java Enterprise 6.5 系统开发语言:Java 运行平台:Windows XP 数据库:MySQL5.0 Web 服务器: Tomcat6.04 第二节2.1 java本系统开发相关技术介绍Java 已用动态的交互应用软件使 Web 栩栩如生。它使开发人员具有编 写一次到处运行 TM”的巨大能力。而且,借助其 JavaAPI 及其编程语言上的 Java 虚拟机,它已产生一种分布信息的崭新模式。这种模式叫做 Java 企业计 算,正在帮助各企业以各种不同的方法取得竞争优势。网管和控制已大大简 化。软件分配基本上是免费的,而且立即可实现。电子贸易已获得。占有成 本大幅度降低。信息和应用软件到处可存取。Java 建立在简单的前提基础上, 即所有微处理器都应讲同一种语言所有内部采用芯片的产品都应能一起 工作,无缝而方便地共享信息。它已经改变企业和个人同 Internet 大交道的 方式。现在,它正在对消费类产品产生明显的影响,而且从总体上更加深刻 地影响企业计算。 借助 Java,您可自由自在地使用您已拥有的硬件和软件。这是因为 Java 是独立于平台的。它还可使您超越企业计算,使应用软件在便携式计算机、 信息亭、电视、蜂窝电话和其他大量设备上运行。 全世界的公司都已发现 Java 数不胜数的用途。所有用途可从其无可比拟 的能力,即提高可靠性、安全性和简化各种不同计算产品和环境的能力中受 益非浅,而且节省的时间和费用十分可观。 Java 无处不在。它已拥有几百万个用户,其发展速度要快于在它以前的 其他任何一种计算机产品。它可位于任何地方,而且能到处运行。Java 正在 迅速被用做传播信息的事实上标准,这是因为它既可给企业,也可给最终用 户带来似乎数不清的好处。 Java 的特点: 1、Java 语言是简单的。Java 语言的语法与 C 语言和 C+语言很接近, 使得大多数程序员很容易学习和使用 Java。另一方面,Java 丢弃了 C+ 中 很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、 自动的强制类型转换。特别地,Java 语言不使用指针,并提供了自动的废料 收集,使得程序员不必为内存管理而担忧。 2、Java 语言是一个面向对象的。Java 语言提供类、接口和继承等原语, 为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持 类与接口之间的实现机制( 关键字 为 implements) 。Java 语言全面支持动态绑 定,而 C+ 语言只对虚函数使用动态绑定。总之,Java 语言是一个纯的面向 对象程序设计语言。5 3、Java 语言是分布式的。Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net) ,它提供了用于网 络应用编程的类库,包括 URL、URLConnection、Socket、 ServerSocket 等。 Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。 4、Java 语言是健壮的。Java 的强类型机制、异常处理、废料的自动收集 等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。 5、Java 语言是安全的。Java 通常被用在网络环境中,为此,Java 提供 了一个安全机制以防恶意代码的攻击。除了 Java 语言具有的许多安全特性以 外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader) ,如 分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管 理机制(类 SecurityManager)让 Java 应用设置安全哨兵。 6、Java 语言是体系结构中立的。Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的 字节码 格式(后缀为 class 的文件), 然后可 以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境 和软件的分发。 7、Java 语言是可移植的。这种可移植性来源于体系结构中立性,另外, Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可 移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。 8、Java 语言是解释型的。如前所述,Java 程序在 Java 平台上被编译为 字节码格式, 然后可以在实现这个 Java 平台的任何系统中运行。在运行时, Java 平台中的 Java 解 释器 对这些字节码进行解释执行,执行过程中需要的类 在联接阶段被载入到运行环境中。 9、Java 是高性能的。与那些解释型的高级脚本语言相比,Java 的确是高 性能的。事实上,Java 的运行速度随着 JIT(Just-In-Time)编译器技术的发展越 来越接近于 C+。 10、Java 语言是多线程的。在 Java 语言中,线程是一种特殊的对象,它 必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:其一, 使用型构为 Thread(Runnable) 的构造子将一个实现了 Runnable 接口的对象 包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子 类创建的对象即为线程。值得注意的是 Thread 类已经实现了 Runnable 接口, 因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行 的代码。 线程的活动由一组方法来控制。 Java 语言支持多个线程的同时执行, 并提供多线程之间的同步机制(关键字为 synchronized) 。6 11、Java 语言是动态的。Java 语言的设计目标之一是适应于动态变化的 环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来 载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时 刻的表示,能进行运行时刻的类型检查。 Java 语言的优良特性使得 Java 应用具有无比的健壮性和可靠性,这也减 少了应用系统的维护费用。Java 对对象技术的全面支持和 Java 平台内嵌的 API 能缩短应用系统的开发时间并降低成本。Java 的编译一次,到处可运行 的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的 低成本方式。特别是 Java 企业应用编程接口(Java Enterprise APIs)为企业 计算及电子商务应用系统提供了有关技术和丰富的类库。 2.2 MySql MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。在 2008 年 1 月 16 号被 Sun 公司收购。而 2009 年,SUN 又被 Oracle 收 购.对于 Mysql 的前途,没有任何人抱乐观的态度.目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其 是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。MySQL 的官方网站的网址是: MySQL 最 初 的 开 发 者 的 意 图 是 用 mSQL 和 他 们 自 己 的 快 速 低 级 例 程 (ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:mSQL 并没有他们需要的那么快和灵活。 这导致了一个使用几乎和 mSQL 一样的 API 接口的用于他们的数据库的新的 SQL 接口的产生,这样,这个 API 被设计成 允许为用于 mSQL 而 写的第三方代码更容易移植到 MySQL。 MySql 特性: 1.使用 C 和 C+编写,并使用了多种 编译器 进行测试,保证源代码的可移 植性 2.支持 AIX、 FreeBSD 、 HP-UX、 Linux 、 Mac OS、 Novell Netware、 OpenBSD、 OS/2 Wrap、Solaris、Windows 等多种操作系统 3.为多种编程语言提供了 API。这些编程语言包括 C 、C+、Python 、Java、Perl 、 PHP 、Eiffel、Ruby 和 Tcl 等。4.支持 多线程 ,充分利用 CPU 资源 6.既 能够 作 为一 个单 独的 应用 程 序应 用在 客户 端服 务 器网 络环 境中 ,也 能够 作为 一个 库而 嵌 入到 其他 的软 件中 提 供多 语言 支持 ,常 见 的 编 码 如 中文 的 GB 2312、BIG5,日文的 Shift_JIS 等都可以用作数据表名和数据列名 7.提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径7 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库 MySql 应用: 与其他的大型数据库例如 Oracle、DB2、SQL Server 等相比,MySQL 自 有它的不足之处,如规模小、功能有限(MySQL Cluster 的功能和效率都相 对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使 用者和中小型企业来说, MySQL 提供的功能已经绰绰有余, 而且由于 MySQL 是开放源码软件,因此可以大大降低总体拥有成本。 目 前 Internet 上 流 行 的 网 站 构 架 方 式 是 LAMP (Linux+Apache+MySQL+PHP) ,即使用 Linux 作为操作系统,Apache 作为 Web 服务器,MySQL 作为数据库,PHP 作为服务器端脚本解释器。由于这四 个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱 就可以建立起一个稳定、免费的网站系统。 2.3 Struts2 struts 是开源软件。使用 Struts 的目的是为了帮助我们减少在运用 MVC 设计模型来开发 Web 应用的时间。如果我们想混合使用 Servlets 和 JSP 的优 点来建立可扩展的应用,struts 是一个不错的选择。 运行流程: 服务器启动后,根据 web.xml 加载 ActionServlet 读取 struts-config.xml 文件内容到内存。 以登录为例:第一次进 login.jsp 会先实例化 Form、把默认值(String 默认 为空字符串,整形默认为 0)赋给表单元素。 输 入 用 户 名 密 码 提 交 表 单 、 提 交 到 action 属 性 的 login.do, 通 过 ActionServlet 读 struts-config.xml 文件找到 action 下的 path 属性找到.do,通过 name 属性找 form-beans 中的 form-bean 的 name 属性得到 ActionForm 的包名 类名,先实例化 form,把表单的值填充给 form,调用 form 的 validate 方法验 证、ActionErrors 返回 null 表示验证通过,否则失败返回 input 指定的页面. 验证通过会实例化 Action,执行 Action 的 excute 方法。 Hibernate Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非 常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来 操纵数据库。 Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端程序使用,也可以在 Servlet/JSP 的 Web 应用中使用,最具革命意义 的是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化8 的重任。 实际应用: Session 接口负责执行被持久化对象的 CRUD 操作(CRUD 的任务是完成 与数据库的交流,包含了很多常见的 SQL 语句)。 SessionFactory 接口负责初始化 Hibernate。它充当数据存储源的代理, 并负责创建 Session 对象。 Configuration 接口负责配置并启动 Hibernate,创建 SessionFactory 对象。 Transaction 接 口 负 责 事 务 相 关 的 操 作 ,也 可 以 设 计 编 写 自 己 的 底 层 事 务 处理代码。 C/S 结构 C/S 结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构, 通 过 它 可 以 充 分 利 用 两 端 硬 件 环 境 的 优 势 , 将 任 务 合 理 分 配 到 Client 端 和 Server 端 来 实 现 , 降 低 了 系 统 的 通 讯 开 销 。 目 前 大 多 数 应 用 软 件 系 统 都 是 Client/Server 形式的两层结构, 由于现在的软件应用系统正在向分布式的 Web 应用发展,Web 和 Client/Server 应用都可以进行同样的业务处理,应用不同 的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的 应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是 目前应用系统的发展方向。 C/S 结构的优点: C/S 结构的优点是能充分发挥客户端的处理能力,很多工作可以在 客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主 要有以下几个: 只适用于局域网。而随着互联网的飞速发展,移动办公 和分布式办公越来 越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术, 同时要对系统进行专门的设计来处理分布式的数据。 客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任 何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有 很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系 统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。 对客户端的操作系统一般也会有限制。可能适应于 Win98, 但不能用于 win2000 或 Windows XP。或者不适用于微软新的操作系统等等,更不用说 Linux、nix 等。 C/S 架构软件的优势与劣势: (1)应用服务器运行数据负荷较轻。最简单的 C/S 体系结构的数据库应 用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前9 台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一 旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序 运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要 对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并 向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务 器运行数据负荷较轻。 (2)数据的储存管理功能较为透明。在数据库应用中,数据的储存管理 功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反 的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服 务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才 能建立定单这样的规则。 所有这些, 对于工作在前台程序上的最终用户, 是“透 明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一 切工作。在客户服务 器架构的应用中,前 台程序不是非常“瘦 小”,麻烦的事 情都交给了服务器和网络。在 C/S 体系的下,数据库不能真正成为公共、专 业化的仓库,它受到独立的专门管理。 (3)C/S 架构的劣势是高昂的维护成本且投资大。首先,采用 C/S 架构, 要选择适当的数据库 平台来实现数据库数 据的真正“统一”,使 分布于两地的 数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同 一个数据库才能有效 实现,有这样一些问 题,如果需要建立“实时”的数据同 步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运 行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理, 这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。 其次,传统的 C/S 结构的软件需要针对不同的操作系统系统开发不同版 本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需 要。在 JAVA 这样的跨平台语言出现之后, B/S 架构 更是猛烈冲击 C/S,并对 其形成威胁和挑战。 2.4 Web 服务器 Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而 最新的 Servlet 和 JSP 规范总是能在 Tomcat 成。 由于有了 Sun 的参与和支持, 中得到体现,Tomcat 5 支持最新的 Servlet 2.4 和 JSP 2.0 规范。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分 软件开发商的认可,成为目前比较流行的 Web 应用服务器。目前最新版本是 6.0。10 Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展 性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不 断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新 的功能。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户 不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。对于一个初 学者来说,可以这样认为,当在一台机器上配置好 Apache 服务器,可利用 它响应对 HTML 页面的访问请求。实际上 Tomcat 部分是 Apache 服务器的 扩展 ,但 它 是独 立运 行的 ,所 以 当你 运 行 tomcat 时 ,它 实 际上 作为 一 个与 Apache 独立的进程单独运行的。 这里的诀窍是, 当配置正确时, Apache 为 HTML 页面服务, Tomcat 实 而 际上运行 JSP 页面和 Servlet。另外,Tomcat 和 IIS、Apache 等 Web 服务器 一样,具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器, 独立的 Servlet 容器是 Tomcat 的默认模式。不过,Tomcat 处理静态 HTML 的 能力不如 Apache 服务器。11 第三节 系统总体设计分析3.1 系统需求分析 随着互联网的爆炸性发展,人们越来越习惯于利用网络来实现所需的服 务,网络已深深影响到人们生活的各个方面。另外,传统的图书馆不能满足 一部分现代人的需要,而电子阅览室,由于其不受时间与空间的限制同时又 具有传统图书馆的大部分功能,能够满足各类用户的常规与特殊需求,而且 其方便快捷,实现技术又比较成熟,因此受到当代人的喜爱。 该系统主要分为两部分:读者部分和管理员部分。为了方便读者查找自 己感兴趣的主题进行阅读,要将图书按照内容进行分类。读者可以按照类别 进行查找,逐级浏览、可以查看自己的信息。本系统还可对用户的账号和书 目的阅读权限进行管理。管理员需要给用户分配用户名和密码,及设定用户 的级别, 还为用户提供图书的排行榜让用户能知道那些图书受到大家的欢迎。 3.2 系统实现的目标 学校图书管理系统的开发主要要实现的目标有以下几个方面: (1)界面设计友好、美观。 (2)数据存储安全、可靠。 (3)信息分类清晰、准确。 (4)强大的查询功能,保证数据查询的灵活性。 (5)实现对图书借阅和归还过程的全程数据信息跟踪。 (6)提供图书借阅排行榜,为图书管理员提供了真实的数据信息。 (7)提供灵活、方便的权限设置功能,使整个系统的管理分工明确。 (8)具有易维护性和易操作性。 3.3 系统功能模块设计 (1)系统设置模块:添加删除管理员、设置管理员的权限、说明图书存放 书架信息添加删除书架信息。 (2)读者管理模块:添加删除不同类型的读者及注明可借图书的数量、添 加删除读者的档案。 (3)图书管理模块:添加删除不同类型的的图书及注明图书可借的天数库 存数量、添加删除图书的档案。 (4)图书借还模块:可查询读者借阅和归还图书的信息及图书的现有库存12 量。 (0035)系统查询模块:可根据不同的条件(条形码、书名、类别、作者、 书架、出版社)查询读者需要的图书、读者可根据不同的条件(图书条形码、 图书名称、读者编号、读者名字、到期时间)查询自己借阅图书信息。 (6)排 行 榜 模 块 : 可 以 让 读 者 知 道 图 书 借 阅 的 排 行 榜 及 读 者 借 阅 的 排 行 榜。 3.4 系统功能结构图 根据图书管理系统的实际需求,可以将图书管理系统划分为系统设置、 图书管理、读者管理、图书借还、系统查询、排行榜 6 个部分各个部分的具 体功能的系统功能结构图如图 3-1 所示。图书管理系统系 统 设 置读 者 管 理图 书 管 理图 书 借 还系 统 查 询排 行 榜管 理 员 设 置书 架 设 置读 者 类 型 管 理读 者 档 案 管 理图 书 档 案 管 理图 书 类 型 管 理图 书 借 阅图 书 归 还图 书 档 案 查 询图 书 借 阅 查 询图 书 借 阅 排 行 榜读 者 借 阅 排 行 榜图3-1系统功能结构图(1)图书借阅系统完成用户的借书过程其数据流图如图3-2所示。13 图3-2借阅系统的数据流图(2)还书系统完成图书的归还过程其数据流图如图3-3所示。图3-3归还系统的数据流图(3)图书档案管理系统为用户提供图书档案信息其数据流图如图3-4所示。14 图3-4图书档案管理数据流图(4)读者档案系统用于记录读者的详细信息其数据流图如图3-5所示。图3-5 系统流程图读者档案管理数据流图3.5图书管理系统的流程是用户先输入自己的帐号密码及系统显示的验证码 进入系统如有一项不符合则不能进入系统,成功登陆系统后系统根剧登陆的 帐号信息从数据库中的数据进行对比判断是读者还是管理员,如果是读者则 能进行信息查询,及修改自己的相关信息,查询到自己所需要的图书就能通 过管理员进行借阅图书、归还图书也是通过管理员完成的。如果不是读者而15 是管理员,那管理员可以进行相关信息的查询、添加删除图书及读者的所有 信息、设置相应的权限、为图书更新排行榜的信息、以及完成读者的图书借 阅与归还。图书管理系统的系统流程图如图 3-6 所示。登陆 系统否是否登陆管 理 员判断身份读者排行榜信息图书信息读者信息图书归还图书借阅信息查询图3-6图书管理系统的流程图16 数据总体 总体结构设计 第四节 数据 总体 结构设计4.1 数据库概念结构设计 数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求 的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这个 阶段不用考虑所采用的数据库管理系统、操作系统类型、机器类型等问题。 这阶段可用的工具很多。用的最多的是 E-R 图(Entity-Relation,实体-关系图), 另外还有许多计算机辅助工具(Computer Aided Software Engineering, CASE) 可以帮助进行设计。本系统采用了 E-R 图的方法进行数据库概念结构设计。 E-R 图是描述数据实体关系的一种直观描述工具。这种图中有: (1)实体:用方框表示,方框内为实体的名称。 (2)实体的各种属性:用椭圆表示,椭圆内为属性名称。使用线段将其和响 应的实体连接起来。 (3)实体之间的联系:用菱形表示,菱形内为联系的名称。 实体和实体之间的联系较多,比较常见的联系有 l:1,l:N 和 M:N 这三种。 4.2 数据库逻辑结构设计 概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构 后才能进行数据库应用的设计。也就是要将概念上的结构转化为数据库系统 所支持的实际数据模型。 第一种转化是将实体转化为关系表。这种转化较简单,需要将实体的属 性定义为表的属性即可。 第二种转化是联系的转化。即将各个实体之间的联系转化为表格之间的 关系,如外部键的定义。 在上面工作的基础上归纳出人员管理数据库表格的组成之间的联系等 等。该数据库系统具有以下方面的特点: 结构合理,对一个人员建立多条记录。 所建立的数据冗余度小,独立性强。 建档、修改、查询、统计快速而准确。 保密性好、可靠性好。 图书管理系统中要有图书,图书是图书管理系统中密不可分的部分,因 此要创建一图书信息实体,用来保存图书的详细信息。图书信息实体属性图 如图 4-1

温馨提示

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

评论

0/150

提交评论