1、I 基于 JSP 的图书管理系统 摘 要 随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率。计算机信息处理系统的引进已彻底改变了许多系统的经营管理 , 使其高效的发挥最大作用,能够迅捷的为用户提供相应的服务 。 图书管理系统是学校管理机制中的重要组成部分,通过对图书管理系统的运行管理机制进行调查研究,开发了此图书系统。本系统中解决了学校图书管理事务中的常用基本问题以及相关统计工作。本系统中包含 6 个功能模块:系统设置,读者管理,图书管理,图书借还,系统查询和更改口令。 本系统使有 jsp 进行网页 界面的设计,使用 MVC 设计模式,采用了开源框架 Struts, 它采用了当
2、今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。本系统中通过 JDBC 驱动和数据库进行无缝连接,后端的数据库是 mysql,也是 一个开源的数据库系统,该数据库具有较高的完整性,一致性和安全性。 关键词:图书管理 , 信息管理 , jsp, struts II ABSTRACT With the scientific and technological progress, the rapid development of the computer industry has greatly enhanced the efficiency of the people
3、. The introduction of computer information processing system has completely changed the management of many systems, making it most useful and efficient, able to provide prompt service for the user. Library management system is the school management in an important part of library management system t
4、hrough the mechanism of operation and management of research and development of this library system. Solve this system in the school library management services and related basic issues common statistics. The system includes six modules: system settings, the reader management, library management, li
5、brary circulation, the system queries and change the password. The system makes a jsp for web interface design, the use of MVC design pattern, using the open source framework Struts, it uses the latest technology of todays software design, with the development of high efficiency, design flexibility,
6、 user-friendly software is generated so beautiful. The system and database through JDBC driver seamlessly connect back-end database is mysql, but also an open source database system, the database has high integrity, consistency and safety. Key words: book management, management of information, jsp,
7、struts III 目 录 第 1 章 JSP 的功能 .1 1.1 JSP 语言简介 . 1 1.2 JSP 技术的运用 . 1 1.3 SEVLET 技术简介 . 2 第 2 章 图书管理系统需求分析 .4 2.1 可行性分析 . 4 2.1.1 技术可行性 . 4 2.1.2.经济可行性 . 4 2.2 图书借阅管理系统需求概述 . 4 2.2.1 系统目标 . 4 2.2.2 用户类和用户特性 . 5 2.3 图书借阅管理系统需求模型 . 5 2.3.1 功能描述 . 5 2.3.2 图书管理员详细功能描述 . 6 2.3.3 主要用例的用例描述 . 6 第 3 章 系统总体设计 .
8、9 3.1 数据库设计 . 9 3.1.1 数据库设计概述 . 9 3.1.2 图书信息表结构设计 . 10 3.1.3 图书类型信息表结构设计 . 10 3.1.4 读者信息表结构设计 . 11 3.1.5 读者类型信息表结构设计 . 11 3.1.6 图书借阅信息表结构设计 . 12 3.1.7 图书归还信息表结构设计 . 12 3.1.8 用户信息表结构设计 . 12 3.1.9 图书馆信息表结构设计 . 13 3.1.10 办证参数信息表结构设计 . 13 3.2 系统总体 结构设计 . 13 3.2.1 图书管理系统总体结构图 . 14 3.2.2 系统管理员模块功能 . 14 3.
9、2.3 读者管理模块功能 . 15 3.2.4 图书管理模块功能 . 15 3.2.5 图书借还模块功能 . 16 3.2.6 系统查询模块功能 . 17 第 4 章 程序设计与编码 .19 IV 4.1 开发平台与工具 . 19 4.1.1 J2EE 平台 . 19 4.1.2 WEB 服务器和数据库 . 19 4.2 程序设计 . 20 4.2.1 程序设计概述 . 20 4.2.2 数据库与 Web 服务器的连接 . 21 4.2.3 登录模块程序设计 . 21 4.2.4 系统管理员功能模块的实现 . 22 4.2.5 读者管理功能模块的实现 . 23 4.2.6 查询功能模块的实现
10、. 24 4.2.7 图书管理功能模块的实现 . 25 4.2.8 图书借还功能模块的实现 . 26 第 5 章 软件测试 .28 5.1 软件测试的方法与步骤 . 28 5.2 测试 用例设计与测试用例的运行过程及测试结果分析 . 29 5.2.1 模块测试 . 29 5.2.2 集成测试 . 30 5.2.3 验收测试 . 31 5.3 评价 . 31 总 结 . 32 参考文献 . 33 致 谢 . 34 第 1 章 JSP 的功能 JSP(Java Server Pages)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种 动态网页 技术标准。 JSP 技术
11、有点类似 ASP 技术,它是在传统的 网页HTML 文件 ( *.htm, *.html) 中插入 Java 程序段 ( Scriptlet) 和 JSP 标记 ( tag) ,从而形成 JSP 文件 ( *.jsp) 。 用 JSP 开发的 Web 应用是跨平台的,既能在 Linux下运行,也能在其他 操作系统 上运行。 1.1 JSP 语言简介 JSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用逻辑。 JSP 将网页逻辑与网页设计和显示分离,
12、支持可重用的基于组件的设计,使基于 Web 的应用程序的开发变得迅速和容易。 Web 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序段,然后将执行结果连同 JSP 文件中的 HTML 代码一 起返回给客户。插入的 Java 程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP 与 Java Servlet 一样,是在服务器端执行的,通常返回给客户端的就是一个 HTML 文本,因此客户端只要有浏览器就能浏览。 JSP 的 1.0 规范的最后版本是 1999 年 9 月推出的, 12 月又推出了 1.1 规范。目前较新的是 JSP1.2 规范, JSP2.0
13、规范的征求意见稿也已出台。 JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客户端请求以后对这些 Java 代码进行处理,然后将生成的 HTML 页面返回给客户端的浏览器。 Java Servlet 是 JSP 的技术基础,而且大型的 Web 应用程序的开发需要 Java Servlet 和 JSP 配合才能完成。 JSP 具备了 Java 技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自 JSP 推出后,众多大公司都支持 JSP 技术的服务器,如 IBM、 Oracle、 Bea公司等,所以 JSP 迅速成为商业应用的服
14、务器端语言。 JSP 可用一种简单易懂的等式表示为: HTML+Java=JSP。 1.2 JSP 技术 的运用 利用 JSP 技术,动态信息由 JSP 页面来表现, JSP 页面由安装在 Web 服务器或者使用 JSP 的应用服务器上的 JSP 引擎执行。 JSP 引擎接受客户端对 JSP 页面的请求,并且生成 JSP 页面作为对客户端的响应。 JSP 页面通常被编译成为 Java Servlets,这是一个标准的 Java 扩展。页面开发人员能够访问全部的 Java 应用环境,以利用 Java 技术的扩展性和可移植性。当 JSP 页面第一 次被调用时,如果它还不 存在,就会被编译成为一个
15、Java Servlets 类,并且存储在服务器的内存中。这就使得在接下来的对该页面的调用中,服务器会有非常快的响应(这避免了 CGI BIN 为每个 HTTP 请求 生成一个新的进程的问题)。 JSP 页面可以包含在多种不同的应用体系结构或者模型中,可以用于由不同协议、组件和格式所组 成的联合体中。基于 JSP 的动态信息发布技术是一个开放的、可扩展的建立动态 Web 页面的标准。不论采用什么创建工具,开发人员都可以使用 JSP 页面来创 建可移植的 Web 应用,在不同的 Web 应用服务器上运行。 1.3 SEVLET 技术简介 Servlet 是一种服务器端的 Java 应用程序,具有
16、独立于平台和协议的特性 ,可以生成动态的 Web 页面。 它担当客户请求( Web 浏览器或其他 HTTP 客户程序)与服务器响应( HTTP 服务器上的数据库或应用程序)的中间层。 Servlet是位于 Web 服务器内部的服务器端的 Java 应用程序,与传 统的从命令行启动的Java 应用程序不同, Servlet 由 Web 服务器进行加载,该 Web 服务器必须包含 支持 Servlet 的 Java 虚拟机 。 Servlet 是在服务器上运行的小 程序 。这个词是在 Java applet 的环境中创造的, Java applet 是一种当作单独文件跟网页一起发送的小程序,它通常
17、用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务 服务器上 需要一些程序,常常是根据用户输入访问数据库的程序。这些通常是使用公共网关接口( CGI(Common Gateway Interface))应用程序完成的。然而,在服务器上运行 Java,这种程序可使用 Java 编程语言实现。在通信量大的服务器上,Java servlet 的优点在于它们的执行速度更快于 CGI 程序。各个用户请求被激活成单个程序中的一个线程,而无需创建单独的进程,这意味着服务器 端处理请求的系统开销将明显降低。 最早支持 Servlet 技术的是 JavaSoft 的 Java Web Se
18、rver。此后,一些其它的基于 Java 的 WebServer 开始支持标准的 ServletAPI。 Servlet 的主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。 Servlet 看起来像是通常的 Java 程序。Servlet 导入特定的属于 Java ServletAPI 的包。因为是对象字节码,可动态地从网络加载,可以说 Servlet 对 Server 就如同 Applet 对 Client 一样,但是,由 于 Servlet运行于 Server 中,它们并不需要一个图形用户界面。从这个角度讲, Servlet 也被称为 FacelessObject。 一个 se
19、rvlet 就是 Java 编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过 “请求 -响应 ”编程模型来访问的应用程序。虽然 servlet可以对任何类型的请求产生响应,但通常只用来扩展 Web 服务器的应用程序。 第 2 章 图书管理 系统需求分析 2.1 可行性分析 采用现代化统一的计算机信息网站系统, 能够有效优化图书馆管理系统,使其高效的发挥最大作用,能够迅捷的为读者提供相应的服务。开发本系统的可行性研究如下 。 2.1.1 技术可行性 技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本系统采用 JSP 开发出友好美观的人机界面,便于
20、用户理解、操作。数据库管理系统采用 MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。因此本系统的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足 本系统所需。 2.1.2 经济可行性 鉴于计算机技术发展异常迅猛 , 在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率 , 也是图书馆管理发展的必然趋势 , 其必将有比较宽阔的市场 , 因此改性统在经济可行性上时可行的。 2.2 图书借阅管理系统需求概述 2.2.1 系统目标 该系统主
21、要建立一个基于 B/S 模式的图书馆借阅管理系统 , 面对当起很多小型图书管理仍是人工管理带来的检索速度慢 , 效率低 , 借阅归还图书量大 , 图书统计工作量大 , 藏书不能完成及时更新的问题 , 该系统可以对 跟系统的三个用户类型的使用实现 : 1) 对于读者在本系统的应用下可实现按照各种方式 (如 : 书名 , 编号 , 作者 )查询图书馆的藏书请客 , 方便的借阅图书 , 续借图书 , 归还图书 , 能够查询自己的借阅图书情况。 2) 对于图书馆工作人员能够实现方便的对图书进行查询 , 方便的进行读者借阅情况查询 , 方便的进行借书还书处理等 , 便捷的对图书信息进行添加、修改、删除
22、, 分类管理等操作 , 对读者信息进行相关添加 , 修改 , 分类管理等操作。 3) 对于系统管理员可以对图书馆信息进行修改更新操作 , 对系统用户进行添加、修改、删除、权限设置等操作 , 对图书馆的办 证参数进行修改维护等操作功能。 2.2.2 用户类和用户特性 图书借阅管理系统是一个基于 B/S 模式的对图书馆进行高效率管理的应用系统 , 它的用户主要是读者和图书管理员 , 学生通过该系统进行图书查询进而对自己需要的图书进行借阅及自己的借阅情况进行查询 , 图书管理员则通过本系统实现对图书及读者的高效管理 , 除此之外 , 还需要一个系统管理员对不同的用户进行权限的设置等操作。 三类用户的
23、具体描述如下表 2.1 所示 。 表 2.1 用户具体描述 用户类 描述 读者 读者是该系统的重要的使用角色 , 他们通过该系统查询自己需要的图书信息 , 并像图书管理员提出借阅图书的申请进而借阅自己所需的图书 , 还可以通过对自己借阅情况进行查询。 图书管理员 图书管理员是该系统的另一个重要使用者 , 图书管理员通过该系统进行图书的增加 , 修改 , 删除 , 分类管理等操作 , 实现对读者借阅归还续接图书的方便操作 ,实现对系统中图书 , 读者 , 读者借阅情况的查询 , 信息更改维护等操作 , 管理读者类型 , 对不同类型读者可借阅的图书数量进行设置等图书馆的基本操作。 系统员 系统管理
24、员主要是图书管理系统中用户的管理 , 实现用户添加修改删除以及用户权限设置等操作,实现对图书馆基本信息的修改维护等操 作 , 还包括对图书馆书架的设置操作 , 以及校外读者办证所需费用、证件有效期等参数的设置。 2.3 图书借阅管理系统需求模型 2.3.1 功能描述 图书借阅管理系统的主要任务是实现读者迅速检索查询 , 方便借阅归还图书 , 图书管理员高效的完成系统的各项基本操作 , 系统管理员是管理用户设置权限等操作 , 从图 2.1 可以看出图书借阅管理系统要完成一下功能 : 1) 登录 : 读者、图书管理员 , 系统管理员进入该系统必须登录,身份验证正确了才可以进入该系统,以不同身份进入
25、该系统所对应的系统使用权限是不同的。 2) 系统设置功能: 系统管理员 可以设置图书馆相关的参数信息。 3) 用户管理功能: 对系统用户进行添加 , 修改 , 删除 , 权限设置等操作。 4) 查询功能: 对图书馆的馆藏图书 , 借阅历史 , 读者用户等信息进行查询。 5) 其他功能 : 系统管理员可以修改自己的密码 , 并且拥有其他用户所拥有的所有功能。 2.3.2 图书管理员详细功能描述 1) 读者管理功能: 对读者的类型和读者档案进行管理 , 包括添加 , 修改 , 删除读者类型和读者用户的相关信息 , 管理不同类型读者借阅图书的数量。 2) 图书管理功能: 包括对图书类型和具体图书信息
26、的管理 , 可以增加 , 修改 , 删除图书 , 丰富具体图书的信息 , 对不同图书进行分类操作。 3) 图书借阅功能: 可以完成对读者借阅 , 续接和还书的操作。 4) 系统查询功能: 查询图书相关资料 , 借阅历史和借阅到期题型 . 5) 修改密码功能: 可以修改自己的登录密码。 2.3.3 主要用例的用例描述 图书借阅借阅管理系统涉及到的用例包括 : 图书借阅 , 图书归还 , 读书查询 ,读者信息管理 , 图书信息管理 , 用户管理等 , 现就系统的主要用例图书借阅 , 图书归还 , 图书查询进行详细分析。 1) 用例“图书借阅 ” , 如表 2.2 所表示 。 表 2.2 图书借阅 用例名称 图书借阅 参与者 读者,图书管理 员 描述 读书可以通过查询等方式获得自己想借阅的图书的名称 , 编号 , 等其他可唯一识别的信息 , 向图书管理员提出借阅请求 , 管理员在系统中记录相应信息 , 将图书交给读者 , 借阅成功。 前置条件 1. 登录; 2. 进入图书借阅的页面 后置条件 1 更新图书借阅列表; 主干过程 1.0 借阅图书