




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河河北北农农业业大大学学 本本科科毕毕业业论论文文 (设设计计) 题题 目:目:基于 JSP 图书管理系统前台管理 学学 院:院: 现代科技学院 专业班级:专业班级: 计算机科学与技术 0901 班 学学 号:号: 二二 O 一三一三 年年 六六 月月 一一 日日 摘要摘要 在网络越来越发达的今天,人们已经不再满足于信息的浏览和发布,而是 希望能够充分享受网络所带来的便利。因此,图书管理系统以方便、快捷的优 点正慢慢地进入人们生活,将传统的图书管理方式彻底的解脱出来,提高效率, 减轻工作人员以往繁忙的工作,减小出错概率,使读者可以花更多的时间再选 择书和看书上。 Java 是一种程序设计语言,它具有简单的、完全面向对象以及与平台无关 的结构,也具有可移植性、高性能和安全性等特点,而 Java 语言最大的成功之 处在于它的平台无关性和具有强大的网络编程功能。因此我将用 JAVA 编写一个 图书管理系统。 本系统是采用 JSP+servlet 在网络上构架一个动态的图书管理系统,它是 以 tomcat 作为服务器并且以 MySQL 作为数据库来开发,采用 JSP 技术开发的 图书管理系统。主要实现 3 个方面功能:1.图书管理系统首页 2.登录区域 3. 用户系统查询功能 4.用户借阅、归还功能 关键词:关键词:图书管理,系统设计,dreamweaver,数据库 ABSTRACT Increasingly developed in the network today,people had no longer meet the purpose of information browsing and publishing,but hope to enjoy more and more convenient brought by Internet.Therefore,Book Management System the advantages of convenient,fast is slowly into peoples life,the traditional books management way thorough liberation,improve efficiency,reduce staff ever busy job,reduce the error probability,so that readers can spend more time to choose books and read on. Java is a programming language, it has a simple, fully object-oriented and platform independent structure, also with portability, high performance and safety, while Java language greatest success lies in its platform independence and has strong network programming function. So I will use JAVA to write a Book Management System. This system is try to use the JSP+servlet on the network architecture of a dynamic books management system,it is a tomcat as the server,using MySQL as database to development ,using the JSP technology development books management system. Main realize three aspects of function:1. The books management system home page 2. Log in and registered area 3. The users system query functions Key words: Management of books,systematic design,dreamweaver,database 目录目录 1.1.绪论绪论.1 1.1 课题研究的目的和意义 .1 1.2 国内外概况 .1 2.2.实现技术实现技术.2 2.1 JAVA技术.2 2.2 MYSQL.3 2.3 B/S 结构.4 2.3.1 作用.5 2.3.2 架构软件.5 2.4 ECLIPSE 开发环境.6 2.5 DREAMWEAVER.6 2.6 WEB 服务器.7 3.3.需求分析需求分析.8 3.1 系统需求概述 .8 3.2 系统的功能分析 .8 3.3 经济可行性分析 .8 3.4 性能需求分析.9 4.4.系统设计与实现系统设计与实现.9 4.1 模块分析.9 4.2 数据流程图 .10 4.2.1 系统数据流图.10 4.3 数据字典.11 4.4 主要代码.12 4.5 系统实现.15 5.5.总总 结结.17 参参 考考 文文 献献.18 致致 谢谢.18 1 1.1.绪论绪论 随着互联网逐步普及,人们的生活和工作也越来越离不开信息网络的支持, 而图书作为信息存储及传播的主要媒体之一,其需求量越来越大。由于手工管 理方式的落后,处理数据的能力有限,工作效率低,不能及时为读者提供所需 信息,各种数据得不到充分利用,这对于图书馆的图书管理要求越来越高。在 计算机日益普及的今天,对图书管理而言,可以采用图书管理系统来管理图书, 从而实现图书信息管理的自动化。本文所介绍的图书管理系统前台管理,系统 前台开发页面用 Dreamweaver 设计,当网页页面元素需要调用数据库的数据时, 通过 JSP 服务器提取数据库数据返回前台显示。其主要特性是能动态、实时的 完成信息的传递,且具有高效的交互性,更有效的处理客户请求,易于维护和 更新,其运行所需环境及其工作流程和各个功能控件的工作原理将在本文依次 介绍,并且文中提供了部分程序源代码。 1.11.1 课题研究的目的和意义课题研究的目的和意义 随着社会的发展、信息化的普及和发展,现在网络不仅在各企事业单位中 的应用越来越广泛而且也已经逐渐融入了每个人的生活当中,逐渐的成为人们 生活中不可或缺的一部分。在这种情况下,书籍就渐渐地成为人们获取并增长 知识的主要途径,如何科学的管理图书馆不但关系到读者阅读的方便程度,也 关系到图书馆的发展。为了更好的充实人们的生活,我特做此系统更满足人们 在日常生活的需要和需求。 图书管理系统主要功能实现图书管理的自动化,只需一名图书管理员即可 操作系统,节省人力;可以迅速查到所需信息,也可为学校老师和学生提供充 足的信息和快捷的查询手段。开发图书管理系统,以适应现行图书管理工作的 要求,提高工作效率。 1.21.2 国内外概况国内外概况 随着计算机技术的发展越来越快,全球信息化和高新技术的发展也为图书 馆提供了更好的发展机遇。随着科学技术的不断提高,计算机科学日渐成熟, 作为计算及应用的一部分,使用计算机对图书信息进行管理,有着手工管理所 无法比拟的优点。例如:检索迅速、查找方便、易修改、存储量大、数据处理 快、成本低、寿命长、便于打印等。这些优点能够极大地提高图书管理的效率, 也是图书馆的科学化、正规化管理,与世界接轨的重要条件。 高校图书馆的工作理念与工作方式也在逐步转变:首先,从“重藏轻用”逐 步转向“藏用并举” ,从“小而全” “大而全”的封闭性管理逐步转向信息化、 网络化的开放式管理。其次,图书馆馆藏资源由现实馆藏想向现实馆藏与虚拟 2 馆藏并存转移。再次,图书馆的工作对象已由单一媒体转变为多种媒体。最后, 图书馆信息需求的深度正在变化,人们不再满足于初级信息提供方式,需要更 深层次的信息服务。这种服务以用户为中心,根据用户问题和问题环境确定用 户需求,通过信息分析和重组形成符合用户需求的知识,或者帮助用户找到解 决的方案。 在一些先进的西方国家,数字图书馆的定位,建立,应用相对比较成熟。 而其应用价值,则更多体现在教育领域。数字图书馆教育涉及图书、情报学、 计算机、网络、法律、经济、行为学、伦理学等学科和领域。理论和实践性紧 密结合,不仅在理论上涉及面广,而且在实践操作方面对学生提出了较高的要 求。而且,数字图书馆教育是动态的,它需要根据不同的受教育者施行不同层 次的教育内容,随着数字图书馆理论和实践研究的不断深入而要对课程内容进 行更新。 数字图书馆是伴随着互联网发展而产生的一个正在成长的新生事物。 目前,世界中许多发达国家都在抓紧数字图书馆的建设,数字图书馆已成为国 际高科技竞争中新的制高点,成为评价一个国家信息基础设施水平的重要标志。 对我国来说,数字图书馆的建设可以建立以中文信息为主的各种信息资源,互 联网上中文信息缺乏的状况就可以得到解决,形成中华文化在互联网上的整体 优势。数字图书馆还是保存和延续发展民族文献遗产的最佳手段,所有的珍贵 资料都可以经数字化处理后,将原件保存在更适宜的环境中,而数字化的资料 由于实现原件的复制,并不影响一般意义上的查阅。因此,加快中国数字图书 馆建设势在必行。 2.2.实现技术实现技术 2.12.1 JavaJava 技术技术 Java,是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由 Sun 公司的詹姆斯高斯林(James Gosling)等人于 1990 年代初开发。它最 初被命名为 Oak,目标设置在家用电器等小型系统的编程语言,来解决诸如电 视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化 家电的市场需求没有预期的高,Sun 放弃了该项计划。就在 Oak 几近失败之时, 随着互联网的发展,Sun 看到了 Oak 在计算机网络上的广阔应用前景,于是改 造了 Oak,在 1995 年 5 月以“Java”的名称正式发布了。Java 伴随着互联网的 迅猛发展而发展,逐渐成为重要的网络编程语言。 Java 编程语言的风格十分接近 C+语言。继承了 C+ 语言面向对象技术的 内核,Java 舍弃了 C+语言中容易引起错误的指针(以引用取代) 、运算符重载 (operator overloading) 、多重继承(以接口取代)等特性,增加了垃圾回收 器功能用于回收不再被引用的对象所占据的内存空间。在 Java SE 1.5 版本中 Java 又引入了泛型编程(Generic Programming) 、类型安全的枚举、不定长参 3 数和自动装拆箱等语言特性。 Java 不同于一般的编译运行计算机语言和解释执行计算机语言。它首先将 源代码编译成字节码(bytecode) ,然后依赖各种不同平台上的虚拟机来解释执 行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,这同时 也在一定程度上降低了 Java 程序的运行效率。但在 J2SE1.4.2 发布后,Java 的运行速度有了大幅提升。 与传统程序不同 Sun 公司在推出 Java 之际就将其作为一种开放的技术。全 球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。 “Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,并获得了广大软 件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。 Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、 分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的 语言。 Java 语言有以下特点 简单(Simple):指的是去除了 C/C+中较少使用或可能不安全的功能,例 如指标,运算子重载,多重继承等。 物件导向的(Object-oriented):利用 OOP 的三种基本特性:PIE(多型,继 承,封装),来设计出可重複使用的元件,使系统有弹性易于维护。 网路的(Network-Savvy):提供容易使用的 API 来撰写网路程式 。 直译式的(Interpreted):bytecode 在 JVM 上执行时,JIT 负责转换为机器 码。 稳健的(Robust):捨弃了对记忆体的指标运作。 安全性(Secure) : 资源回收处理 (Garbage Collection)由 JVM 自行作记 忆体管理,例外处理 (Exception) 可预防突发错误的产生。 结构中立(Architecture Neutral):程式执行在虚拟机器上。 可携的(Portable): Write once, run anywhere 指的是由 JVM 与不同的 作业系统沟通。 高效率的(High Performance):利用 HotSpot, JIT 技术改善效能。 多执行绪的(Multithreaded):Java 程序可发出多隻并行的轻量化行程。 动态的(Dynamic):Java 程式执行时动态的连结类别库。 2.22.2 MySQLMySQL MySQL 是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB 公 司。在 2008 年 1 月 16 号被 Sun 公司收购。而 2009 年,SUN 又被 Oracle 收 购.对于 Mysql 的前途,没有任何人抱乐观的态度 .目前 MySQL 被广泛地应用 在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低, 尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选 4 择了 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 资源。 5.优化的 SQL 查询算法,有效地提高查询速度 。 6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也 能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文 的 GB 2312、BIG5,日文的 Shift_JIS 等都可以用作数据表名和数据列名 。 7.提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径 。 8.提供用于管理、检查、优化数据库操作的管理工具。 9.可以处理拥有上千万条记录的大型数据库。 2.32.3 B/SB/S 结构结构 B/S 结构(Browser/Server,浏览器/服务器模式),是 WEB 兴起后的一种 网络结构模式,WEB 浏览器是客户端最主要的应用软件。这种模式统一了客户 端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和 使用。客户机上只要安装一个浏览器(Browser),如 Netscape Navigator 或 Internet Explorer,服务器安装 Oracle、Sybase、Informix 或 SQL Server 等数据库。浏览器通过 Web Server 同数据库进行数据交互。图 2.1 5 图 2.1 B/S 结构图 2.3.1 作用 B/S 最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件, 只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常 容易。 B/S 结构的使用越来越多,特别是由需求推动了 AJAX 技术的发展,它的程 序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增 加了交互性,能进行局部实时刷新。 2.3.2 架构软件 (1)维护和升级方式简单。目前,软件系统改进和升级越来越频繁,B/S 架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管 理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而 知的,但 B/S 架构的软件只需要管理服务器就行了,所有的客户端只是浏览器, 根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增 加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地, 只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来 越“瘦” ,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升 级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时 间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦” 客户机, “胖”服务器。 (2)成本降低,选择更多。大家都知道 windows 在桌面电脑上几乎一统天 下,浏览器成为了标准配置,但在服务器操作系统上 windows 并不是处于绝对 的统治地位。 现在的趋势是凡使用 B/S 架构的应用管理软件,只需安装在 Linux 服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的, 不管选用那种操作系统都可以让大部分人使用 windows 作为桌面操作系统电脑 不受影响,这就使得最流行免费的 Linux 操作系统快速发展起来,Linux 除了 6 操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。 比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要 了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使 用 windows 操作系统,但用户的电脑本身安装的大部分是 windows 操作系统。 (3)应用服务器运行数据负荷较重。由于 B/S 架构管理软件只安装在服务 器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事 务逻辑在服务器(Server)端完全通过 WWW 浏览器实现,极少部分事务逻辑在 前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件 维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题, 后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。 2.42.4 EclipseEclipse 开发环境开发环境 Eclipse 最初是由 IBM 公司开发的替代商业软件 Visual Age for Java 的下一代 IDE 开发环境,是著名的跨平台的自由集成开发环境。最初主要用来 Java 语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如 C+和 Python 的开发工具。 Eclipse 的本身只是一个框架平台,但是众多插件的支持使得 Eclipse 拥 有其他功能 相对固定的 IDE 软件很难具有的灵活性。许多软件开发商以 Eclipse 为框架开发自己的 IDE。 Eclipse 采用的技术是 IBM 公司开发的 (SWT) ,这是一种基于 Java 的窗口组件, 类似 Java 本身提供的 AWT 和 Swing 窗口组件;不过 IBM 声称 SWT 比其他 Java 窗口 组件更有效率。 Eclipse 的用户界面还使用了 GUI 中间层 JFace,从而简化了基于 SWT 的应用程序的构建。 Eclipse 的插件机制是轻型软件组件化架构。在富客户机 平台上,Eclipse 使用插件 来提供所有的附加功能,例如支持 Java 以外的其 他语言。 已有的分离的插件已经能够 支持 C/C+(CDT) 、Perl、Ruby,Python、telnet 和数据库开发。插件架构能够支持将 任意的 扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。 Eclipse 的设计思想是:一切皆插件。Eclipse 核心很小,其它所有功能 都以插件的 形式附加于 Eclipse 核心之上。Eclipse 基本内核包括:图形 API (SWT/Jface), Java 开发环境插件(JDT) ,插件开发环境(PDE)等。 2.52.5 DreamweaverDreamweaver Dreamweaver 可以用最快速的方式将 Fireworks,FreeHand,或 Photoshop 等档案移至网页上。使用检色吸管工具选择荧幕上的颜色可设定最接近的网页 安全色。对于选单,快捷键与格式控制,都只要一个简单步骤便可完成。 Dreamweaver 能与您喜爱的设计工具,如 Playback Flash,Shockwave 和外挂 7 模组等搭配,不需离开 Dreamweaver 便可完成,整体运用流程自然顺畅。除此 之外,只要单击便可使 Dreamweaver 自动开启 Firework 或 Photoshop 来进行编 辑与设定图档的最佳化。 使用网站地图可以快速制作网站雏形、设计、更新和重组网页。改变网页 位置或档案名称,Dreamweaver 会自动更新所有链接。使用支援文字、HTML 码、 HTML 属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简 单。 Dreamweaver 是唯一提供 Roundtrip HTML、视觉化编辑与原始码编辑同步 的设计工具。它包含 HomeSite 和 BBEdit 等主流文字编辑器。帧(frames)和表 格的制作速度快的令您无法想像。进阶表格编辑功能使您简单的选择单格、行、 栏或作未连续之选取。甚至可以排序或格式化表格群组,Dreamweaver 支援精 准定位,利用可轻易转换成表格的图层以拖拉置放的方式进行版面配置。所见 即所得 Dreamweaver 成功整合动态式出版视觉编辑及电子商务功能,提供超强 的支援能力给 Third-party 厂商,包含 ASP, Apache,BroadVision, Cold Fusion,iCAT, Tango 与自行发展的应用软体。当您正使用 Dreamweaver 在设 计动态网页时,所见即所得的功能,让您不需要透过浏览器就能预览网页。梦 幻样版和 XML Dreamweaver 将内容与设计分开,应用于快速网页更新和团队合 作网页编辑。建立网页外观的样版,指定可编辑或不可编辑的部份,内容提供 者可直接编辑以样式为主的内容却不会不小心改变既定之样式。您也可以使用 样版正确地输入或输出 XML 内容。 全方位的呈现利用 Dreamweaver 设计的网页, 可以全方位的呈现在任何平台的热门浏览器上。对于 cascading style sheets 的动态 HTML 支援和鼠标换图效果,声音和动画的 DHTML 效果资料库可在 Netscape 和 Microsoft 浏览器上执行。使用不同浏览器检示功能, Dreamweaver 可以告知您在不同浏览器上执行的成效如何。当有新的浏览器上 市时,只要从 Dreamweaver 的网站在下载它的描述档,便可得知详尽的成效报 告。 2.62.6 WEBWEB 服务器服务器 Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同 开发而成。由于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总是能 在 Tomcat 中得到体现,Tomcat 5 支持最新的 Servlet 2.4 和 JSP 2.0 规范。 因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并 得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器。目前最 新版本是 6.0。 Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性 好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 8 改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 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 服务器。 3 3. .需求分析需求分析 3.13.1 系统系统需求概述需求概述 本次毕业设计的图书管理系统的应用对象定位是河北农业大学图书馆,因 此在进行需求分析时主要考虑学校图书馆的具体要求。我们知道图书馆的主要 功能就是为注册的用户提供图书的借阅,在此过程中主要涉及对图书的管理和 借阅者的管理以及图书借阅信息额管理。其中,对图书馆的管理主要是指:对 馆藏图书的添加,修改、删除、查询等;对借阅者的管理主要是指:对图书的 借阅者添加、修改、删除、查询等操作;对图书借阅信息的管理主要是指:对 借阅者的借阅信息的管理(比如,某个借阅者何时借阅和借阅哪本图书等) 。除 此之外,因为本系统为计算机应用系统,所以为了安全,对于每一个使用该系 统的人,都要实行用户密码登陆,只有合法的用户才能使用该系统。笔者预期 本系统应具有以下特点: (1) 采用 B/S 模式实现在线借阅,管理图书。 (2) 确保系统具有良好的性能和友好的用户界面。 (3) 较高的处理效率,便于使用和维护。 (4) 采用成熟技术开发,使系统具有较高的技术水平和较长的生 命周期。 (5) 系统尽可能简化图书馆管理人员的重复工作,提高工作效 率。 (6) 简化数据查询、统计难度。 9 3.23.2 系统的功能分析系统的功能分析 本系统对于读者来着,他们关心的问题是如何方便的查询所需书籍以及自 己正在借阅或已经借阅过的书籍,所借书籍是否到期。由此系统应做到以下几 点: 1用户登录:对用户身份进行认证。不同身份的用户使用的权限不同。 2借阅者管理:对借阅者信息进行管理,增加权限或限制权限。 3图书管理:对图书信息进行修改、删除,注销图书进行注销,同时提供 图书检索功能。 4查询功能:实现图书的查询检索 5其他功能:实现借阅期限的规定,处罚操作等。 3.33.3 经济可行性分析经济可行性分析 整个系统由我们独立完成,几乎是零费用,然而应用到图书馆管理系统之 后会节省大量人力与财力资源。鉴于图书馆的规模大小的不同,支付的能力不 同,同时本作品是一个动态网页,每次浏览都需要一个 Web 服务器支持,所以 从经济上完全是可行的。 3.43.4 性能需求分析性能需求分析 (1)可靠性高,能在由于系统问题或其它原因产生错误后,作出相对应处 理,使程序具有较高的容错性能。 (2)宜操作性,程序简单易懂,容易上手使用。设计界面是简化界面,使 用户能很容易看懂并使用。 (3)开发文档易理解,保证以后自己二次开发或他人接手开发时,能够清 晰的理解整个系统的设计思路和实现细节。 (4)模块化设计此软件的功能,不同的模块实现不同的功能,使得软件易 于以后的维护与扩展,在以后可以更好的完善本软件的功能,更方便于在工作 中的应用。 4.4.系统设计与实现系统设计与实现 4.14.1 模块分析模块分析 本系统针对不同用户有不同功能模块,其中图书馆管理员模块包括作者管 理、出版社管理、图书管理、用户管理、退出系统五个模块,读者模块包括修 改登录密码、查询功能。系统功能结构如图 4.1 10 图 4.1 系统功能结构图 4.4.2 2 数据流程图数据流程图 4.2.1 系统数据流图 系统数据流程图如图 4.2: 图书馆管理系统 系统管理员 普通管理员 作 者 管 理 出 版 社 管 理 图 书 管 理 用 户 管 理 退 出 系 统 登 录 密 码 修 改 图 书 借 阅 管 理 图 书 归 还 管 理 11 一 一 一 一 一 一 一一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 图 4.2 系统数据流图 4.34.3 数据字典数据字典 该系统有用户信息、图书信息、图书借阅信息三个实体。 1) 用户信息 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 =一 一 ID+一 一 +一 一 +一 一 +一 一 一 一 一 一 一 一 一 一 一 一 2)图书基本信息 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 =一 一 一 一 ISBN+一 一 +一 一 一 +一 一 一 一 一 一 一 一 一 一 3)图书借阅信息 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 =一 一 一 一 ISBN+一 一 +一 一 一 +一 一 +一 一 一 一 一 一 一 一 一 一 一 一 4) 图书编号 ISBN 12 一 一 一 一 一 一 一 ISBN 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 ISBN=0一 一 一 一 2+4一 一 一 一 6 一 一 一 一 一 一 一 5) 用户 ID 一 一 一 一 一 ID 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 ID=1一 一 10 一 一 一 一 一 一 一 4.44.4 主要代码主要代码 2、个人信息管理代码 UpdateinfoServlet public class UpdateinfoServlet extends HttpServlet Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException req.setCharacterEncoding(gbk); resp.setCharacterEncoding(gbk); int m = Integer.parseInt(req.getParameter(m); switch(m) case 2:/修改个人信息 this.modify_info(req,resp); break; protected void modify_info(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException ReaderModel reader = new ReaderModel(); reader.setName(req.getParameter(name); reader.setSex(req.getParameter(sex); reader.setBirthday(req.getParameter(birthday); 13 reader.setTel(req.getParameter(tel); reader.setEmail(req.getParameter(email); reader.setID(Integer)req.getSession().getAttribute(readerid); ReaderDAO readerdao = new ReaderDAO(); String info = ; try if (readerdao.update(reader)!=-1) info=个人信息修改成功,请退出后重新登入系统!; req.setAttribute(info,info); req.getRequestDispatcher(QueryinfoServlet?m=2).forward(req, resp); else info=个人信息修改失败; req.setAttribute(info,info); req.getRequestDispatcher(QueryinfoServlet?m=2).forward(req, resp); catch (Exception e) e.printStackTrace(); 2、执行各种查询与插入数据库的核心代码 import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; public abstract class BaseDAO protected DbConnection dbconn; public BaseDAO() dbconn=new DbConnection(); /执行增,删,改等操作,不返回结果集,返回影响记录的行数 public int updateBySql(String sql) throws Exception System.out.println(sql); Connection conn=null; Statement stmt=null; try conn=dbconn.ge
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件设计师核心概念梳理试题及答案
- 2024年兰州市榆中县中医医院招聘笔试真题
- 2024年安徽省市场监管局下属事业单位真题
- 游戏行业会计个人工作计划
- 江苏省常州市钟楼区二十四中学2025年七年级数学第二学期期末质量跟踪监视试题含解析
- 保安工作总结计划广告宣传行业保安工作的广告位保护
- 2024年滨州市环境卫生清运大队招聘笔试真题
- 教育在幼儿园的实践计划
- 风险管理体系中的评估方法试题及答案
- 四川省成都市龙泉驿区2025年七下数学期末教学质量检测试题含解析
- 2024年山东济南先行投资集团有限责任公司招聘考试真题
- 江苏省扬州市邗江区2025年初三中考一模考试英语试题含答案
- 产褥期保健及护理课件
- 陕西省西安市2025届中考模拟英语检测试题(附答案)
- 2025-2030消防车产业规划专项研究报告
- 初中英语教辅电子版单选题100道及答案
- 2025年上海市崇明区中考二模英语试题(含答案)
- 大型心血管造影系统及其DSA质量控制
- 国家中小学智慧教育平台应用指南
- 2024北京丰台区三年级(下)期末数学试题及答案
- 2024-2025学年人教版七年级(下)期中数学试卷(考试范围:第7~9章) (含解析)
评论
0/150
提交评论