基于轻量级J2EE的图书管理系统的设计与实现(张小龙2007.doc_第1页
基于轻量级J2EE的图书管理系统的设计与实现(张小龙2007.doc_第2页
基于轻量级J2EE的图书管理系统的设计与实现(张小龙2007.doc_第3页
基于轻量级J2EE的图书管理系统的设计与实现(张小龙2007.doc_第4页
基于轻量级J2EE的图书管理系统的设计与实现(张小龙2007.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

兰州工业高等专科学校兰州工业高等专科学校 毕业设计 论文 毕业设计 论文 题目题目 基于轻量级基于轻量级 J2EEJ2EE 的图书的图书 管理系统的设计与实现管理系统的设计与实现 系系 别 别 电子信息工程系电子信息工程系 专专 业 业 计算机应用技术计算机应用技术 班班 级 级 计计 应应 0707 班班 姓姓 名 名 张张 小小 龙龙 学学 号 号 200703101142200703101142 指导教师 职称 指导教师 职称 贾贾 桂桂 霞 讲师 霞 讲师 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 日日 期 期 2010 03 082010 03 08 兰州工业高等专科学校兰州工业高等专科学校 毕业设计 论文 任务书毕业设计 论文 任务书 电子信息工程电子信息工程 系系 10 届届 计算机应用技术计算机应用技术 专业专业 毕业设计 论文 任务书毕业设计 论文 任务书 毕业设计 论文 题目 基于轻量级 J2EE 的图书管理系统的设计与实现 校内 外 指导 教师 职 称工作单位及部门联系方式 贾桂霞讲师计算机应用技术教研室一 题目说明 目的和意义 随着时代的发展 在现代大学图书管理中 如何方便快捷地为读者提供服 务 提高图书的利用率等问题变得越来越突出 借助网络 为图书馆建立一个 信息管理系统 给图书管理和读者提供一个电子平台 将大大提高学校图书馆 的管理水平和现代化程度 本次设计项目基于轻量级的 J2EE 架构 开发一个小型图书管理系统 其中 使用 C S 模式建立桌面应用程序客户端实现图书的借阅和信息管理服务 使用 B S 模式建立 web 客户端实现读者查询服务 在设计与实现过程中将涉及 javaBean JSP 和 Servlet 等组件技术的使用技巧和常用的 Web 服务器 Tomcat 的使用和配置 通过本次设计 要求学生学会使用 J2EE 的组件技术搭建一个轻量级 J2EE 架构的 MIS 使学生初步得到软件工程的训练 全面培养软件开发过程中需求 分析 概要设计 详细设计 数据库设计及文档规范书写的能力 二 设计要求 设计内容 该系统主要分为借书管理服务 信息管理服务和读者查询三大功能模块 借阅管理 主要包括借书和还书功能 信息维护 包括维护借阅证 读者规则信息和维护书刊信息 维护物理书 刊信息 读者查询 包括图书信息查询及借阅信息查询 设计环境 硬件 微机 软件 JDK SQL server2000 MySQL Tomcat Rational Rose2003 Netbeans6 0 设计要求 1 要求学生能够熟练使用某一种数据库管理系统 具有一定的 Java 程 序编写经验 具有网页设计的基本知识 了解 HTML 的常用标记 最好能熟练使 用 Dreamweaver 等网页设计可视化工具 对 JavaEE 的组件知识有一定的了解 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 2 使用 Rational Rose 对系统进行 UML 建模 包括需求分析 系统的用 例分析 域模型分析 3 系统采用 J2EE 架构 B S 模式 JSP SQL server2000 C S 模式 DeskApp SQL server2000 4 论文书写规范 文字通顺 图表清晰 测试数据完整 结论明确 设计步骤 1 需求分析 2 系统功能模块设计 3 数据库的分析与设计 4 模块详细设计 5 系统的整合实现 注意事项 1 毕业设计的时间安排根据时间表 最后一周 检查程序 交毕业设计论 文 毕业设计论文要求有封面 封面上写明班级 姓名 指导教师 时间等 并装订成册 2 指导老师打分方案 毕业设计成绩 考勤 30 论文 40 系统 30 3 每周考勤一次 有特殊情况需向指导教师或班主任老师请假 三 进度表 日 期内 容 第 15 周 第 16 周 第 17 周 第 18 19 周 第 20 周 开 学 通过在学校图书馆的实际调研 并搜集参考资料 制订设计 计划 进行需求分析 系统功能设计 提出系统总体设计方案 提出系统详细设计方案 配置软件 硬件开发环境 编码及测试 对毕业设计进行总结 认真阅读毕业设计 论文 的书写要 求 撰写毕业论文 将毕业论文以书面与电子文档两种形式 提交指导教师批阅 进一步完善毕业论文 提交终稿 交叉评阅 答辩 完成日期第 20 周 2010 年 1 月 答辩日期第 1 2 周 下学期 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 四 主要参考文献 资料 设备和实习地点及翻译工作量 一 参 考 文献 1 王养廷 李磊等 UML 基础与应用 清华大学出版社 2 萨师煊 王珊 数据库系统概论 高等教育出版社 4 完全掌握 SQL Server 2000 美 机械工业出版社或类似的相关书籍 5 耿祥义编著 JSP 实用教程 清华大学出版社 2008 2 6 JSP Oracle 数据库组建动态网站经典实例 赵光等编著 电子工业出版社 7 刘斌等编著 Netbeans 权威指南 电子工业出版社 2008 5 二 实习地点 信息技术实验室 和学生自己考察的外部地点 三 翻译工作量 对论文摘要进行英文翻译 要求英文摘要 250 单词以内 关键词 5 8 个词 注 本任务书要求一式四份 一份系部留存 一份报教务处实践教学科 学生每人一份 指导教师一份 2010 届毕业设计论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 摘 要 本次毕业设计开发的图书管理系统是一个 web 应用系统 其开发主要包括 后台数据库的建立和维护以及前台 web 页面的开发两个方面 对于前者要求建 立数据的一致性和完整性 对于后者则要求应用程序功能的完备 易用等的特 点 该系统的设计基于 B S 结构 用 Tomcat 作为 Web 服务器 页面的设计使用 JSP 动态网页编程技术 数据库采用 MySQL 开源数据库 用纯 JAVA 驱动程序实 现数据库连接 本系统实现的主要功能模块有借阅管理模块 主要实现借书和还书功能 信息维护模块 包括维护借阅证 读者规则信息和维护书刊信息 维护物理书 刊信息 读者查询模块 包括图书信息查询及借阅信息查询 关键词 JSP 技术 MySQL Web 技术 2010 届毕业设计论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 Abstract The design and development of the graduate library management system is a web application systems their development include the establishment and maintenance of back end database as well as the front two aspects of the development of web pages For the former requires the establishment of data consistency and integrity the latter requires a complete application functionality ease of use and other characteristics The system s design is based on B S structure using Tomcat as a Web server and pages designed for use JSP dynamic web page programming databases using open source MySQL database using pure JAVA driver to implement database connection The main function of this system implementation management module module has to borrow mainly to achieve library and book function information maintenance module including the maintenance of library card readers information and maintenance of books and information on the rules maintaining the physical books and information readers Query Module including the Book Information inquiries and loan information query Keywords JSP technology MySQL Web technology 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 I 目 录 1 概 述 1 1 1 图书馆管理系统概述 1 1 2 相关技术简介 1 1 2 1 JSP 技术 1 1 2 2 Servlet 2 1 2 3 Tomcat 3 1 2 4 MySQL 3 1 3 软硬件环境 4 1 3 1 开发环境 4 1 3 2 运行环境 4 2 需 求 分 析 5 2 1 系统功能分析 5 2 2 用例建模 6 2 3 动态行为建模 8 2 3 1 建立用例 维护用户信息 活动图 8 2 3 2 建立用例 维护图书信息 活动图 9 2 3 3 建立用例 登录 顺序图 9 2 3 4 建立用例 添加图书 顺序图 10 2 3 5 建立用例 删除书种 顺序图 11 2 3 6 建立用例 借书 顺序图 11 2 3 7 建立用例 还书 顺序图 12 2 3 8 建立用例 续借 顺序图 13 2 4 E R 图 14 3 总 体 设 计 16 3 1 运行模式的选择 16 3 1 1 图书管理系统的架构 16 3 1 2 开发环境配置 16 3 2 系统功能模块设计 17 3 3 WEB服务器端 18 3 4 数据库设计 18 3 5 类 图 21 4 详 细 设 计 25 4 1 重要模块设计 25 4 1 1 图书管理模块 25 4 1 2 读者管理模块 30 4 2 系统界面设计 33 5 系 统 测 试 35 结 束 语 37 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 II 致 谢 38 参 考 文 献 39 附录 主要模块代码 40 前台页面主要代码 40 服务器端主要代码 47 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 1 1 概 述 1 1 图书馆管理系统概述 随着社会的发展 人们生活水平的不断提高 物质文化的发展已经远远满 足不了人们的需求 精神文明有了飞速的发展 因此图书事业的发展就成为精 神文明进步的一个动力 在知识经济时代到来的今天 用计算机控制图书馆的 工作由自动化系统运行而完成 这不仅节省了人力 还提高了工作效率和服务 质量 而且还加速了图书的流通 由于高等院校的规模不断扩大 高校图书馆的藏书 管理人员 读者的数 量也越来越多 图书管理涉及到大量的数据处理 传统的人工处理已经不能完 成庞大的数据处理 因为图书的情况是随时改变的 因此必需对图书进行动态 的管理 而这对于一个管理人员来说是一件比较复杂的事情 存储 查询 借 阅是必不可少的业务 因此 为方便对图书馆书籍 读者资料 借还书等进行 高效的管理 提高业务流程效率 让管理员从繁重的工作中解脱出来 使管理 员在使用一个软件以后能极其容易地对所有图书进行管理 并且准确无误 轻 松自如 因此开发一个图书馆管理系统软件是当务之急 也是本论文选题的重 要意义和研究宗旨 总之 建立图书馆的计算机自动化管理系统可以大大提高 图书馆图书流通率 1 2 相关技术简介 1 2 1 JSP 技术 JSP 是 Java Server Pages 的缩写 是由 Sun 公司倡导 许多公司参与 于 1999 年推出的一种动态网页技术标准 它是 J2EE 开发技术的一个分支 基于 Java Servlet 以及整个 Java 体系的 web 开发技术 利用这一技术可以建立安全 跨平台的先进动态网站 JSP 技术有下列优点 1 一次编写 各处执行 特性 2 搭配可重复使用的组件 3 采用标签化页面开发 4 JSP 的效率和安全性更高 5 JSP 的适应平台更广 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 2 JSP 运行原理 如果服务器上的 JSP 页面被第一次请求 则服务器上的 JSP 引擎先将该页面转译成 java 文件 再编译成 java 字节码文件 最后通过执行 字节码文件来响应客户的请求 而当此 JSP 页面再次被请求时 服务器则直接 执行此页面的字节码来响应客户的请求 这些字节码的作用是让服务器执行 JSP 的标签和脚本 并将结果连同 HTML 标签一起发送给客户的浏览器显示 JSP 页面的首次执行往往由服务器管理者来完成 而当有多个用户同时请 求同一个页面时 JSP 引擎则为每个用户启动一个线程 图 1 1 运行原理流程图 1 2 2 Servlet Servlet 是服务器语言 它的优点是自动开启多个线程接受多个用户的访 问 Servlet 的生命周期从 init 方法开始 Servlet 一旦创建 它便会保 存在服务器中 除了第一个用户应用 init 方法之外 其他用户都不需要激活 该方法 当服务器关闭该 Servlet 的应用或者服务器关闭时 Servlet 生命便 结束 Servlet 生命结束之前会激活方法 destroy Servlet 这一特性与全局 EJB 十分相似 我们可以使用 Servlet 这一特性建立数据库连接的缓冲池 客户程序可以决定使用 doGet 或者 doPost 方法向服务器传递数据 客 户端通过 form 标识的 method 参数定义 get 或者 post 方法 doGet 方法是默 认的方法 但是该方法传递的数据量不能太大 如果要传输大量数据 需使用 doPost Servlet 的 service 方法可以接受 get post 或者其他方法传入服 务器的数据 如果不能确认用户使用哪种方法向服务器传入数据 可以使用 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 3 service 方法接受不同类型方法传入的参数 Servlet 使用 getParameter 取 得用户变量 1 2 3 Tomcat Tomcat 是一个免费的开源的 Servlet 容器 它是 Apache 基金会的一个核 心项目 由 Apache Sun 和其他一些公司及个人共同开发而成 由于有了 Sun 的参与和支持 最新的 Servlet 和 JSP 规范总能在 Tomcat 中得到体现 Tomcat 被 JavaWorld 杂志的编辑选为 2001 年度最具创新的 Java 产品 可见其在业界 的地位 由于 Java 的跨平台特性 基于 Java 的 Tomcat 也具有跨平台性 很多 中小应用不需要采用 EJB 等技术 JSP 和 Servlet 已经足够 这时如果用应用 服务器就有些浪费了 而 Tomcat 短小精悍 配置方便 能满足我们的需求 这 种情况下我们自然会选择 Tomcat Tomcat 也可以与其他一些软件集成起来实现 更多的功能 现举例如下 与 JBoss 集成起来开发 EJB 与 Cocoon Apache 的另外一个项目 集成起来开发基于 XML 的应用 与 OpenJMS 集成起来开发 JMS 应用 除了以上提到的这几种 可以与 Tomcat 集成的软件还有很多 Tomcat 确 实是一个很好的工具 不仅仅因为其免费 功能强大 更因为其开放性 如今 开源软件越来越受到人们的重视 Linux 就是一个成功的典型 人们不再只限 于使用软件 而且已经关心起软件的具体实现 我们有理由相信 Tomcat 会走得 更远 1 2 4 MySQL MySQL 是一种开放源代码的关系型数据库管理系统 RDBMS MySQL 数据库 系统使用最常用的数据库管理语言 结构化查询语言 SQL 进行数据库管理 由于 MySQL 是开放源代码的 因此任何人都可以在 General Public License 的许可下下载并根据个性化的需要对其进行修改 MySQL 因为其速度 可靠性和适应性而备受关注 大多数人都认为在不需要事务化处理的情况下 MySQL 是管理内容最好的选择 MySQL 关系型数据库于 1998 年 1 月发行第一个版本 它使用系统核心提供 的多线程机制提供完全的多线程运行模式 提供了面向 C C Eiffel Java Perl PHP Python 以及 Tcl 等编程语言的编程接口 APIs 支持多种字段类型并且提供了完整的操作符支持查询中的 SELECT 和 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 4 WHERE 操作 MySQL 开发组计划于 2001 年中期公布 MySQL4 0 版本 在这个版本中将有 以下新的特性被提供 新的表定义文件格式 高性能的数据复制功能 更加强 大的全文搜索功能 在此之后 MySQL 开发着希望提供安全的数据复制机制 在 BeOS 操作系统上的 MySQL 实现以及对延时关键字的定期刷新选项 随着 时间的推进 MySQL 将对 ANSI 92 ANSI 99 标准完全兼容 1 3 软硬件环境 1 3 1 开发环境 硬件环境 硬件环境 普通的 pc 机 cpu 奔腾 4 主频 2 45GHZ 硬盘 80G 操作系统 操作系统 WindowsXP 软件环境 软件环境 JDK MySQL Tomcat Rational Rose2003 Netbeans6 0 网页三剑客 1 3 2 运行环境 硬件环境 硬件环境 普通的 pc 机 486 以上的计算机就行 操作系统 操作系统 兼容当前主流操作系统 Windows 2000 XP vista Linux 等 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 5 2 需 求 分 析 所谓 需求分析 是指对要解决的问题进行详细的分析 弄清楚问题的 要求 包括需要输入什么数据 要得到什么结果 最后应输出什么 可以说 在软件工程当中的 需求分析 就是确定要计算机 做什么 在软件工程中 需求分析指的是在建立一个新的或改变一个现存的电脑系 统时描写新系统的目的 范围 定义和功能时所要做的所有的工作 需求分析 是软件工程中的一个关键过程 在这个过程中 系统分析员和软件工程师确定 顾客的需要 只有在确定了这些需要后他们才能够分析和寻求新系统的解决方 法 在软件工程的历史中 很长时间里人们一直认为需求分析是整个软件工程 中最简单的一个步骤 但在过去十年中越来越多的人认识到它是整个过程中最 关键的一个过程 假如在需求分析时分析者们未能正确地认识到顾客的需要的 话 那么最后的软件实际上不可能达到顾客的需要 或者软件无法在规定的时 间里完工 2 1 系统功能分析 本系统定位于学校的中小型图书馆 暂时考虑单机环境下的实现操作 系 统选择目前常用的 Windows XP 2000 系统开发的总体目的是在图书馆信息管 理中实现管理的系统化 自动化 减少工作量 增加效率及可靠性 本图书管理系统的主要功能有 1 图书权限的管理 包括系统登录 密码修改 管理员添加等 2 图书类别的管理 即图书类别的添加 修改 查询 包括图书类别的 编号 名称等 3 入库图书的管理 即新进图书的登记 馆藏图书的修改 删除 查询 和报损 包括图书的编号 条码号 ISBN 号 索书号 原名 原作 译者 图书类别 语种 出版社等 4 读者信息的管理 即读者信息的添加 修改 删除 查询和报损 包 括读者编号 类型 性别 身份证号 工作单位 办证日期等 5 读者借阅图书信息的管理 即信息 包括被借图书及借阅者信息 的 添加 修改 删除 查询 包括借书者编号 姓名 类别 所借书编 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 6 号 名称 原名 作者 书籍类别 出版社 借出日期 应还日期等 6 还书信息的管理 即信息 包括图书信息及还书者信息 的添加 修 改 删除 查询 包括还书者编号 姓名 所还书编号 名称 原名 作者 书籍类别 出版社 借出日期 应还日期 实还日期等 2 2 用例建模 UML Unified Modeling Language 是一个开放的 可扩展的工业标准的可 视化建模语言 提供了用来组织分析设计过程 客户 程序员的手段 用例图是 UML 的重要组成部分 主要用来描述用户的需求 强调谁在使用 系统 系统可以完成哪些功能 一个用例是一个系统的行为和系统的部分行为 是对一组动作序列的描述 通过执行该动作序列 系统为参与者提供可观察的结果 用例所侧重的是系统 具有什么样的功能 或者系统能做什么 并不是用例或用例图要说明的内容 本图书管理系统用例中有一类参与者 用户 分别是读者 系统管理员和 图书管理员 两类用例一类是登录模块 另一类是其他操作 分别是系统设置 读者管理 图书管理 图书借还 系统查询 更改口令 整个查询过程通过用 户 学生 教师 系统管理员 图书管理员 登录系统访问数据库进行各自的 查询或维护等工作 系统用例图如下图所示 图 2 1 图书管理系统用例图 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 图 2 2 图书管理系统顶层用例图 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 7 图 2 3 读者用例图 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 图 2 4 系统管理员用例图 事件流分析事件流分析 事件流描述了一个用例在执行时参与者与系统之间的交互过程 这个 过程包含多个分支 即执行者在执行这个过程时可以有多个路线 其中预 期会成功的路线被称为基本流 剩下的其他路线被称为备选流 A 用户登录的事件流分析 基本流 A 1 用户运用网络资源使用系统 用例开始 A 2 用户输入用户名和密码 进行登录 A 3 系统验证输入的用户名和密码是否正确 如果正确登录到本系统 如果错误则执行替换流 B 2 备选流 B 2 如果输入的用户名和密码错误会提示用户重新登录 返回基本事件 流第二步 B 用户借书 还书 续借的事件流分析 基本流 当读者从图书馆借还或续借时 用例开始 如果 图书管理员 选 择 借书 则执行分支流 A 1 借阅图书 如果 图书管理员 选择 还书 则执行分支流 A 2 归还图书 如果 图书管理员 选择 续 借 则执行分支流 A 3 续借图书 分支流 A 1 借阅图书 A 1 1 提供读者的借阅卡和所借图书名称或者图书编号 A 1 2 检索图书 如果图书不在馆 则执行备选流 B 1 A 1 3 否则将图书借给读者 A 1 4 创建借阅记录 A 1 5 存储借阅记录 A 2 归还图书 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 8 A 2 1 提供读者的借阅卡和所借图书名称或者图书编号 A 2 2 归还图书 A 2 3 删除借阅记录 A 3 续借图书 A 3 1 提供读者的借阅卡和所借图书名称或者图书编号 A 3 2 检索图书 A 3 3 将图书借给读者 A 3 4 更新借阅记录 A 3 5 存储借阅记录 替换流 B 1 如果图书不在馆 则系统显示提示信息 用例终止 2 3 动态行为建模 动态行为建模主要是通过交互图中的顺序图等体现的 顺序图 Sequence Diagram 显示多个对象之间的动态协作 顺序图重点是显示对象之间发送的消息的时间顺序 它也显示对象之间的 交互 就是在系统执行时 某个指定时间点将发生的事情 顺序图由多个用垂 直线显示的对象组成 图中时间从上到下推移 并且顺序图显示对象之间随着 时间的推移而交换的消息或函数 消息是用带消息箭头的直线表示的 并且它 位于垂直对象线之间 时间说明以及其他注释放到一个脚本中 并将其放置在 顺序图的页边空白处 活动图是阐明了业务用例实现的工作流程 业务用例工作流程说明了业务 为向所服务的业务主角提供其所需的价值而必须完成的工作 业务用例由一系 列活动组成 它们共同为业务主角生成某些工件 工作流程通常包括一个基本 工作流程和一个或多个备选工作流程 工作流程的结构使用活动图来进行说明 工作流程活动图用于研究实现业务目标时所要执行的各项任务或活动的顺序安 排 活动既可以是手动执行的任务 也可以是自动执行的任务 它可完成一个 工作单元 2 3 1 建立用例 维护用户信息 活动图 图书管理员登录系统后 可以进行查询用户信息 添加用户 删除或更新 读者信息等活动 如下图 2 5 所示 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 9 图 2 5 维护用户信息 活动图 2 3 2 建立用例 维护图书信息 活动图 图书管理员登录系统后 可以进行查询图书信息 添加新图书 删除或更 新图书信息等活动 如下图 2 6 所示 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 图 2 6 维护图书信息 活动图 2 3 3 建立用例 登录 顺序图 用例场景 登录 是在参与者 图书管理员 和 登录界面 对象 主界 面 对象之间发生交互 可以绘制 登录 的顺序图 如图 2 7 所示 其中的 交互过程如下 图书管理员启动系统 弹出对话框 由图书管理员输入用户名和密码 然 后提交 系统检验所输入的用户名和密码是否正确 如果正确则启动系统 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 10 业 业 业 业 业 业 业 业 业 业 1 业 业 业 业 2 业 业 业 业 业 3 业 业 4 业 业 业 业 业 业 5 业 业 业 业 业 图 2 7 登录 的顺序图 2 3 4 建立用例 添加图书 顺序图 用例场景 添加图书 是在参与者 图书管理员 和 主界面 对象 添 加书刊界面 对象 添加书架 对象 添加图书类型 对象 添加具体图书 对象之间发生交互 可以绘制 添加书种 的顺序图 如图 2 8 所示 其中的 交互过程如下 图书管理员选择 添加书种 选项 弹出对话框 由图书管理员输入图书 条形码 图书名称 作者 出版社等信息 然后提交 系统根据所输入的刊号 查询是否已存在该书种信息 若不存在则新建书种 并存书种的信息 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 11 图 2 8 添加图书 的顺序图 2 3 5 建立用例 删除书种 顺序图 用例场景 删除图书 是在参与者 图书管理员 和 主界面 对象 书 刊界面 对象 删除书架 对象 删除图书类别 对象 具体的图书 对象 读者 对象之间发生的交互 可以绘制 删除图书种 的顺序图 如图 2 9 所示 其中交互过程如下 图书管理员选择 删除书种 选项 弹出对话框 图书管理员输入书刊的 刊号 然后提交 系统在数据库中进行查询 显示书刊信息 如果不存在书刊 信息 则提示信息 结束删除动作 如果没有物理书刊被借出 则删除物理书 刊信息 再检查是否存在预定记录信息 如果有 则删除预定记录信息 并通 知借阅者 确认信息无误后删除书种 图 2 9 删除书种 的顺序图 2 3 6 建立用例 借书 顺序图 用例场景 借书 是在参与者 图书管理员 和 主界面 对象 借阅界 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 12 面 对象 读者 对象 查找图书 对象 借阅记录 对象 图书 对象 之间发生的交互 可以绘制 借书 的顺序图 如图 2 10 所示 其中交互过程 如下 图书管理员选择 借阅 选项 弹出对话框 图书管理员输入书刊和借阅 者的信息后提交 系统在数据库中进行查询 确认是否存在这种书刊 如果存 在 确定是否有物理书刊可以被借阅 如果有物理书刊可以被借阅 确定借阅 者是否有效 如果有效 创建借阅记录并存储借阅记录 并在物理书刊和借阅 者信息中添加借阅记录 然后更新物理书刊和借阅者信息 如果确定不存在这 种书刊 或确定没有可借阅的物理图书 则显示信息 图书管理员重新输入书 刊信息或终止借书操作 如果确定借阅者无效 则显示提示信息 图书管理员 重新输入借阅者信息或终止借书操作 图 2 10 借书 的顺序图 2 3 7 建立用例 还书 顺序图 用例场景 还书 是在参与者 图书管理员 和 主界面 对象 还书界 面 对象 读者 对象 借阅记录 对象 图书 对象之间发生的交互 可 以绘制 还书 的顺序图 如图 2 11 所示 其中交互过程如下 图书管理员选择 还书 选项 弹出对话框 图书管理员输入书刊 ID 号并 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 13 提交 系统查询数据库 确定指定 ID 号的物理书刊是否存在 若存在 确定是 否有借阅记录 若有 则从物理书刊和借阅者信息中删除借阅记录 更新物理 书刊和借阅者信息 若指定 ID 号的物理书刊不存在或没有借阅记录 则显示提 示信息 图书管理员重新输入书刊 ID 号或终止还书操作 最后删除借阅记录 图 2 11 还书书种 的顺序图 2 3 8 建立用例 续借 顺序图 用例场景 续借 是在参与者 图书管理员 和 主界面 对象 续借界 面 对象 读者 对象 借阅记录 对象 图书 对象之间发生的交互 可 以绘制 还书 的顺序图 如图 2 12 所示 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 14 图 2 12 续借 的顺序图 2 4 E R 图 E R 图为实体 联系图 提供了表示实体型 属性和联系的方法 用来描述现实 世界的概念模型 构成 E R 图的基本要素是实体型 属性和联系 其表示方法为 实体型 用矩形表示 矩形框内写明实体名 属性 用椭圆形表示 并用无向边将其与相应的实体连接起来 联系 用菱形表示 菱形框内写明联系名 并用无向边分别与有关实体连 接起来 同时在无向边旁标上联系的类型 1 1 1 n 或 m n 图书管理系 统的 E R 图如图 2 13 所示 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 15 图图书书 图图书书管管理理员员读读者者 读读者者条条形形 码码 姓姓名名 性性别别用用户户类类别别 证证件件类类别别 出出生生年年月月 电电话话 邮邮箱箱 用用户户名名 密密码码 借借阅阅 图图书书条条形形 码码 图图书书名名称称 书书架架 图图书书类类别别 出出版版社社 作作者者 读读者者条条形形 码码 图图书书条条形形 码码 借借阅阅记记录录 密密码码 图 2 13 E R 图 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 16 3 总 体 设 计 3 1 运行模式的选择 3 1 1 图书管理系统的架构 在本系统的运行模式采用的是客户机 服务器模式 Client Server 模式 充分利用了客户端和服务器两种技术原有的优点 此模式的数据传递关系如图 3 1 所示 请 求 回 答 SQL 语言 图 3 1 图书管理系统的架构关系图 3 1 2 开发环境配置 系统的开发环境包括软件开发环境 硬件开发环境等 要做好一个系统的 开发 首先就得选好软件开发环境 软件开发环境包括操作系统的选择 数据 库的选择 开发语言的选择以及开发环境的配置等 这些都是能否有效而快捷 的完成系统开发的关键所在 在本次系统开发过程中 我们主要选择了在 Linux 操作系统 JSP 开发工具 MySQL 数据库 Tomcat 服务器的环境下来实现 以下是对本系统开发环境的描述 1 操作系统选择 由于相 Windows 操作系统大家熟悉 也比较方便 安全 稳定 而且运 行速度快 因此服务器端的操作系统选择 Windows 2 开发工具选择 JSP 技术是 Java 技术的延伸 与 ASP 相比 它具有两方面的优点 一 是动态部分用 Java 编写 这不仅使 JSP 的功能更强大 而且更容易于使用 二是 JSP 适应平台更广 由于 Java 具有跨平台特性 因此 JSP 和 JavaBean 甚至不用重新编译 就可以从一个平台移植到另一个平台 Java 可以通过 client DBMS MySQL 数据库 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 17 JDBC 技术和 JDBC ODBC Bridge 访问带有 JDBC 驱动程序或 ODBC 驱动程序 的数据库 如 Oracle SQL Sever MySQL Access 等 鉴于其诸多的优点 选用 JSP 作为开发工具 3 数据库选择 MySQL 是最流行的开放源码 SQL 数据库管理系统 由 MySQL AB 公司 开发 发布并支持 任何人都可以免费使用该软件 MySQL 数据库服务器具 有数据处理量大 快速 可靠和易于使用的特点 同时还具有良好的连通 性和安全性 鉴于 MySQL 的这些特点 我们选用了 MySQL 开发数据库 4 Web 服务器选择 Tomcat 是 Apache 组织开发的一种 JSP 引擎 其本身具有 Web 服务器的 功能 可以作为独立的 Web 服务器来使用 也可以和目前大部分的主流 HTTP 服务器一起配合 Tomcat 具有性能稳定 效率高等特点 3 2 系统功能模块设计 系统主要功能如下 实现借 还以及续借的管理 存储借阅信息 浏览图书馆图书借阅记录 查询图书馆借阅信息 借阅登记信息修改 系统主要功能模块 如图 3 2 所示 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 18 图 3 2 系统功能模块图 3 3 Web 服务器端 Web 服务器端功能主要包括用户登录验证以及图书借阅等方式 当用户通 过电脑登录到互联网中时 登陆客户端就连接到了 Web 服务器中 Web 服务器 在此实现的功能是 当用户登录时 Web 服务器就对用户登录进行检测这其中 包括 普通用户登录检测 普通管理员登录检测 高级管理员登录检测 当用 户进行访问时 Web 服务器此时就接受用户的请求并访问数据库查询 根据用 户请求 Web 服务器可以以两种查询方式访问数据库并把查询结果返回给用户客 户端 功能图如图 3 3 所示 Web 服务器 用户登录信息验证图书借阅及信息查询 超 级 管 理 员 登 陆 普 通 管 理 员 登 陆 普 通 用 户 登 录 管 理 员 访 问 普 通 用 户 访 问 图 3 3 Web 服务器端功能模块 3 4 数据库设计 根据前期的 E R 分析 在服务器上创建名为 db library 的数据库 其中包 括以下表 tb bookcase tb bookinfo tb booktype tb borrow tb giveback tb lib rary tb manager tb parameter tb publishing tb purview tb reader tb readertype 下面将具体介绍数据库中各个表的结构 表 3 1 tb bookcase 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 19 表 3 2 tb bookinfo 表 3 3 tb booktype 表 3 4 tb borrow 表 3 5 tb giveback 表 3 6 tb library 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 20 表 3 7 tb manager 表 3 8 tb parameter 表 3 9 tb publishing 表 3 10 tb purview 表 3 11 tb reader 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 21 表 3 12 tb readertype 3 5 类 图 类图是对类及其之间的关系的可视化表示 从系统的角度描述了系统的静 态结构 类是对一类具有相同特征的对象的描述 是包装信息和行为的项目 是面 向对象的重要特征 类图是面向对象分析和设计的核心 基本概念有类 对象 属性 行为或操作以及关联 聚集 泛化 继承等 另外 类图中还定义了其 它很多重要的概念 并提供了丰富的表示法 使得类图有着很强的表达能力 在面向对象的建模技术中 类 对象及它们之间的关系是最基本的建模元 素 对于一个要描述的系统 其类模型 对象模型以及它们之间的关系揭示了 系统的结构 建立类模型的过程 实际上是对现实世界上的一个抽象的过程 它把现实世界中与问题有关的各种对象及其相互之间的各种关系进行适当的抽 象和分类描述 定义系统实体类定义系统实体类 首先应从研究用例中发现类 并确定类的属性和操作 图书管理系统可以 抽象出以下一些主要的类 1 在人员信息处理方面有 读者 类 2 在图书信息处理方面有 书刊类 物理书刊 类 阅读记录类 预定记录类 等 此外 还应有 图书管理信息 类 它支持持久存储一 个对象 是 借阅者 类 书刊 类 物理书刊 类 预定记录 类的父类 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 22 对象标识 类 他实现了对象标识 用来引用持久对象 每一个类都应当确定其属性 主要操作 累的属性可以通过检查类的定义 分析需求和运用相关知识来确定 与此同时 通过分析业务流程可以把业务流 程中对象之间的交互抽象成一个类的操作 定义用户界面类定义用户界面类 除了一般类外还需要分析用户与系统进行交互的用户界面 这些界面也可 以用类定义 对于图书馆系统可识别出一下一些用户界面类 1 查找书刊界面 类是用来查询制定刊号的书刊的对话框 2 借阅界面 类是用来执行借阅操作的对话框 3 还书界面 类是用来执行还书操作的对话框 4 预定界面 类是用来执行预定书籍操作的对话框 5 信息提示界面 类用来显示提示信息 6 登录界面 类是用来根据输入的用户名和密码验证使用者身份的对 话框 确定类之间的关系并建立类图 对以上已经确定的类 他们之间存在着关联 类属 依赖以及组合关系 1 类属关系 如前所述 实体 类是 借阅者 类 书刊 类 物理书刊 类 借 阅记录 类 预定记录 类的父类 在它们之间存在类属关系 如图 3 4 所示 图 3 4 实体类图 2 组合关系 借阅者界面 查找借阅者界面 书刊界面 查找书刊界面 借 阅界面 还书界面 预定界面 信息提示界面 都是 主界面 的一 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 23 部分 如果 主界面 被破坏 则以上个界面及 信息提示界面 都会被破 坏 故在它们之间存在组合关系 另外 登录界面 与 主界面 之间是关 联关系 如图 3 5 所示 图 3 5 主界面类图 包设计包设计 系统分解 图书管理系统是由两个子系统组成 1 借书管理子系统 负责借书 预定书刊以及还书工作 2 信息管理子系统 负责借阅者 书刊和物理书看的信息维护工作 图书管理系统分解成子系统如图 3 6 所示 图 3 6 图书管理系统分解成子系统图 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 24 系统包图系统包图 为了方便理解和处理大量的模型元素 通过将这些模型元素用包组织起来 图书馆系统虽然不大 但也可以把系统的累组织成包 以便更清楚的表示出系统 结构 图书馆系统的包图如图 3 7 所示 一共有 3 个包 图书业务处理包 界面 包 数据库 包 在 界面 包中包含了前文叙述的全部界面类 在 数据库 包中包含了与实现数据库服有关的全部类 在 图书业务处理 包中包 含了前文前文所述的为实现图书馆管理系统的所有类 业 业 业 业 业 业 业 业 业 业 业 图 3 7 图书馆系统包图 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 25 4 详 细 设 计 详细设计阶段的任务在于要设计出程序的 蓝图 因此 详细设计的结果 基本上决定了最终的程序代码的质量 详细设计的目标不仅仅是逻辑上正确地 实现每个模块的功能 更重要的是设计的处理过程应该尽可能简明易懂 结构 程序设计技术是实现上述目标的关键技术 因此是详细设计的逻辑基础 在编码阶段就可以把详细设计时的描述转换成某种计算机语言 作为图书 管理系统工程的一个步骤 编码是设计的自然结果 因此 代码的质量主要取 决于系统总体设计的质量 但是 程序设计语言的特性和编码途径也会对程序 的可靠性 可用性以及可维护性产生深远的影响 4 1 重要模块设计 本系统涉及到的模块如下 信息设置 图书馆信息 用户设置 参数设置 书架设置 图书管理 图书类型管理 图书档案管理 读者管理 读者类型 管理 读者档案管理 图书借还 图书借阅 图书续借 图书归还 登录界 面 信息查询 图书档案查询 图书借阅查询 借阅到期提示 主页 退出系 统 更改口令等 我主要负责的是本系统中的图书管理 图书类型管理 图书档案管理 读 者管理 读者类型管理 读者档案管理 用户登录系统之后就可以根据自己的 身份做相应的操作 而我设计的这几个模块是系统管理员实现的重要功能 先 就自己的设计的模块进行如下分析 4 1 1 图书管理模块 图书类型管理以及图书档案管理是图书管理系统中的重要组成部分 如果 对图书没有很好的管理 将会降低工作效率 本系统的作用不会得到很好的发 挥 其主要代码如下 book Modify jsp 2010 届毕业论文 基于轻量级 J2EE 的图书管理系统的设计与实 现 26 String str null BookTypeDAO bookTypeDAO new BookTypeDAO Collection coll type Collection bookTypeDAO query str if coll type null coll type isEmpty out println alert 请先录入图书类型信息 history back 1 else Iterator it type coll type iterator int typeID 0 String typename1 BookCaseDAO bookcaseDAO new BookCaseDAO String str1 null Collection coll bookcase Collection bookcaseDAO query str1 if coll bookcase null coll bookcase isEmpty out println ale

温馨提示

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

评论

0/150

提交评论