




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档图书管理系统的设计与实现摘 要本文介绍了基于JSP技术开发的图书管理系统, 阐述了B/ S体系结构的图书管理系统的需求分析、总体设计和开发实现, 并介绍了JSP、JDBC、JavaBeans、session、数据库访问、数据库操作等主要技术及具体功能的实现。该系统利用了基于JSP 的动态Web 技术,基于B/ S 体系结构,执行效率高、操作简单、维护轻松,较好地实现了前端应用程序的高效率查看、后台管理的方便操作,具有很好的可维护性和可扩展性。关键词: JSP 、图书管理系统、B/S、数据库目 录1 引言11.1项目背景及意义11.2图书管理系统简介11.3本文的主要工作12 需求分析22.1 总体需求22.2 用户群体描述22.3需求具体分析32.3.1系统用户管理功能32.3.2读者管理功能32.3.3 图书管理功能32.3.4 系统查询功能42.3.5 图书借还功能42.3.6 个人信息修改功能43 概要设计53.1 系统程序流程53.2 总体功能模块设计53.3 模块功能概要设计53.3.1 读者管理模块53.3.2 图书管理模块53.3.3 系统查询模块63.3.4 图书借还模块64 数据库设计74.1 数据库的需求分析74.2 数据库概念设计74.2.1 实体和属性的定义74.3 数据库的实现84.4数据库的连接95 系统实现105.1 开发环境105.2 查询功能的实现. .11 5.2.1图书查询的实现. . .11 5.2.2借阅查询的实现. . .115.3借、还书功能实现.116 测试报告126.1 测试项目126.2 测试结果12总 结18参 考 文 献181、引言1.1项目背景及意义随着科学技术的高速发展,我们已步入数字化、网络化的时代。在这个高速发展的信息化时代,对于一个高效的图书馆而言,传统的管理办法已远远不能满足要求,现代图书馆需要一个高速、快捷、方便的图书管理办法。因此,WEB图书管理系统应运而生,WEB图书管理系统的主要特点是利用了网络,它为读者和图书馆之间提供了一个交互的电子平台,使得读者通过网络就能轻松查询到图书的相关信息,极大地方便了读者,也提高了图书馆的工作效率、服务质量和管理水平。1.2图书管理系统简介图书管理系统的总体任务是实现图书管理和借阅的信息化,对图书信息和用户(读者,借阅者等)信息进行有效的管理。它主要用于图书馆工作人员对读者信息和图书信息进行管理,并提供对图书的查寻、借阅、归还等功能,为图书馆提供了管理工具,同时让学生可以通过网络实现浏览、查询图书信息等,提高了整体运作效能。1.3本文的主要工作1在实现方式上本文介绍的图书管理系统是基于Internet/Intranet及Web技术,建立以Browser/Server为结构模式、以数据库为后台核心应用、以服务为目的信息平台,对资源进行科学的加工整序和管理维护,为图书管理员和读者提供便利和提高图书管理效率而设计的系统。2在功能方面该系统可以实现用户注册、登录,并方便有效地进行相应图书资料的录入、修改和删除,能够对图书进行分类管理,可以根据关键字搜索图书信息及借阅记录并能执行图书的借出和归还等操作。2、需求分析本章主要阐述图书管理系统的总体需求和主要功能。2.1 总体需求图书管理系统的设计与开发应达到以下的总体目标,即主要功能:1、 系统用户管理功能:添加、删除用户和权限设置,权限设置用于实现限制用户可以使用系统的哪些功能。2、读者管理功能。读者基本信息的添加、修改和删除,读者基本信息的输入包括读者姓名、读者性别、读者条形码、读者类型、出生日期、有效证件、证件号码、电话、Email、备注等;3、图书管理功能,包括图书类型管理和图书档案管理。图书类型管理可以添加、修改和删除图书类型及相应可借天数。图书档案管理可以实现图书信息的添加、修改和删除。图书信息的输入包括图书的条形码、图书的名称、图书的类型、作者的姓名、出版社名称、价格、页码、所在书架等。4、系统查询功能,包括图书档案查询和图书借阅查询。图书档案查询。可按图书条形码、图书类别、书名、作者、出版社、所在书架等检索款目进行精确或模糊检索。图书借阅查询。可以通过图书条形码、图书名称、读者条形码、读者名称快速查找目标书籍及其借阅情况。5、图书借出和归还功能。借书信息的输入,包括所借图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者已借图书的生成等。还书信息的输入,包括所还图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者当前所借图书的生成等。6、个人信息修改功能:修改登录系统的个人密码。22 用户群体描述基于WEB的图书管理系统一般分为两类使用实体:图书馆管理员和读者1. 管理员系统的管理者。负责对图书信息和读者信息进行管理及系统的参数设置,并提供对图书的查寻、借出、归还等功能。2. 读者网站的用户。注册后可以通过网络实现浏览、查询图书信息及借阅情况等。23需求具体分析2.3.1系统用户管理功能1. 功能定义可以添加、删除用户和进行权限设置,权限设置用于限制用户可以使用系统的哪些功能。2. 前置条件1) 用户档案必须在系统数据库里生成。2) 用户信息修改完成后更新数据库。2.3.2读者管理功能1. 功能定义可以实现读者基本信息的添加、修改和删除,读者基本信息包括读者姓名、读者性别、读者条形码、读者类型、出生日期、有效证件、证件号码、电话、Email、备注等;2.3.3图书管理功能1. 功能定义可以实现图书类型管理和图书档案管理。图书类型管理可以添加、修改和删除图书类型并设置其相应可借天数。图书档案管理可以实现图书信息的添加、修改和删除。图书信息的输入包括图书的条形码、图书的名称、图书的类型、作者的姓名、出版社名称、价格、页码、所在书架等。2.3.4系统查询功能1.功能定义可以实现图书档案查询和图书借阅查询。图书档案查询。可按图书条形码、图书类别、书名、作者、出版社、所在书架等检索款目进行精确或模糊检索。图书借阅查询。可以通过图书条形码、图书名称、读者条形码、读者名称快速查找目标书籍及其借阅情况。2. 前置条件1) 图书档案信息必须在系统数据库里生成。2.3.5图书借还功能1.功能定义可以实现图书的借阅和归还功能。借书信息的输入,包括所借图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者已借图书的生成等。还书信息的输入,包括所还图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者当前所借图书的生成等。2.3.6个人信息修改功能1.功能定义用于实现个人信息的修改,主要是修改登录系统的个人密码。3、概要设计3.1系统程序流程图书管理系统在整体结构上,主要包括前端应用程序的前台查看模块以及数据库建立和维护的后台管理模块。前台查看模块主要是面向图书借阅者, 后台管理则面向管理员, 其总体处理流程图如图3.1 所示。图3.1 系统程序流程图3.2总体功能模块设计整个系统分为四个功能模块:读者信息管理模块,图书信息管理模块,系统查询模块和图书借还模块。结构如图3.2所示。图书管理系统读者档案管理图书档案管理系统查询读者修改读者删除图书添加图书修改分类管理图书查询借阅查询图书借还图书归还图书借阅读者添加图书删除按条形码按图书类别按书名按作者按出版社按所在书架分类修改分类删除按图书条形码按图书名称按读者条形码按读者名称分类添加图3.2 系统功能模块图3.3模块功能概要设计3.3.1读者管理模块该模块用于实现读者基本信息的添加、修改和删除,读者基本信息的输入包括读者姓名、读者性别、读者条形码、读者类型、出生日期、有效证件、证件号码、电话、Email、备注等;3.3.2图书管理模块该模块用于实现图书类型管理和图书档案管理。图书类型管理用于添加、修改和删除图书类型并设置其相应可借天数。图书档案管理用于实现图书信息的添加、修改和删除。图书信息的输入包括图书的条形码、图书的名称、图书的类型、作者的姓名、出版社名称、价格、页码、所在书架等。3.3.3系统查询模块该模块用于实现图书档案查询和图书借阅查询。图书档案查询。可按图书条形码、图书类别、书名、作者、出版社、所在书架等检索款目进行精确或模糊检索。图书借阅查询。可以通过图书条形码、图书名称、读者条形码、读者名称快速查找目标书籍及其借阅情况。3.3.4图书借还模块该模块用于实现图书的借阅和归还功能。借书信息的输入,包括所借图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者已借图书的生成等。还书信息的输入,包括所还图书条形码、读者条形码、读者姓名、读者类型、证件类型、证件号码以及读者当前所借图书的生成等。4、数据库设计4.1 数据库的需求分析图书管理系统必须满足来自两方面的需求,这两方面分别是管理员和读者。管理员可以对读者信息和图书信息进行管理,并提供对图书的查寻、借阅、归还等功能。普通读者可以通过网络实现浏览、查询图书信息和借阅情况、修改个人信息等。在设计数据库时,为了方便数据的提取,减少数据库负担;除了明细表以外应建立统计表,在统计表中同一信息只保存一次,随信息的修改,数据库应随时更新。为了方便存取,建立多张数据统计表,将不同主题的信息放在不同的数据表中。4.2 数据库概念设计在概念设计阶段中,我们从页面显示数据的不同看待数据及处理要求,产生一个反映各个主题的概念模式,然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定的限制。4.2.1实体和属性的定义用户权限(权限编号,权限名称)读者(读者姓名、读者性别、读者条形码、读者类型、出生日期、有效证件、证件号码、电话、Email、备注等)图书分类(图书类型名称、可借天数)图书(图书条形码、图书名称、图书类型、作者姓名、出版社名称、价格、页码、所在书架等)图书借阅(图书条形码、图书名称、读者条形码、读者姓名、读者类型、证件类型、证件号码,开始借阅日期,结束借阅日期等)4.3 数据库的实现MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。MySQL是一个关系数据库管理系统,关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。MySQL是开源的开源意味着任何人都可以使用和修改该软件,任何人都可以从Internet上下载和使用MySQL而不需要支付任何费用。MySQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端、多个不同的客户程序和库、管理工具和广泛的应用程序接口(APIs)。各数据表的物理实现如下:bookinfo表图书表booktype表图书类型表borrow表图书借阅表giveback表图书归还表manager表管理员表reader表读者4.4 数据库的连接对数据库的访问和操作都采用数据库的接口技术来处理, 本系统主要是使用了JDBC, 即Java Databse Connetctivity( Java数据库连接) 接口技术来访问数据库。JDBC 是一种可用于执行SQL 语句的Java API。它由一些Java 语言编写的类和界面组成。JDBC 为数据库应用前台工作提供了一种标准的程序设计接口,使开发人员只可以用纯Java 语言编写完整的数据库应用程序。它是一个比较独特的动态连接结构, 它使得系统模块化。使用JDBC来完成对数据库的访问主要包括以下几个组件: Java 的应用程序、JDBC 驱动管理程序、驱动器和数据源。由于数据库连接与数据操作的重用机率比较高, 如果每个页面都编写一段数据库连接的代码, 将是比较烦的工作, 所以本图书管理系统使用JSP 的Bean 组件进行数据库连接。JavaBeans 是基于Java 的组件模型, 由属性、方法和事件组成。它是一种Java 的类, 通过封装成为具有某种功能或者处理某个业务的对象, 因此也可以通过嵌在JSP 页面内的Java 代码访问Bean 及其方法。Bean的含义其实就是可重复利用的组件。在本系统中, 主要是使用了Bean 来实现设计平台中的事件操作处理, 即反复进行操作的数据库连接。数据库连接Bean 包括实现功能的主要语句为:import java.sql.*; / / 导入JDBC 标准类库String strDBDriver = sun.jdbc.odbc.JdbcOdbcDriver; / / JDBC驱动程序Class.forName(strDBDriver); / / 注册数据库驱动程序String strDBUrl=jdbc:odbc:library;/ / library 是数据库的名称Connection conn=DriverManager.getConnection(strDBUrl)/ / 建立数据库连接Statement stmt=conn.createStatement(); / / 建立执行数据库操作的stmt 对象5、系统实现5.1 开发环境1. JCreatorJCreator可无限撤销、代码缩进、自动类库方法提示、按所选智能定位查阅JavaAPI文档等功能;采用仿VS2005界面设计,体验感觉更快更好更易用。2. JSPJSP具有更新快,易于升级,易于部署,维护和修改的优点。我们使用JSP技术来完成Web查询子系统的开发。使用Eclipse3.2作为开发环境3.TomcatTomcat是一个JSP/Servlet容器,它是在Sun公司的JSWDK基础上发展起来的一个JSP和Servlet规范的标准实现,使用Tomcat可以体验JSP和Servlet的最新规范。Tomcat具有开源免费,小巧灵活等有点,适合中小型的应用。4. MySQLMySQL速度快,开源免费,支持多种操作系统,适合一般中小应用。在后台程序中我们使用MySQL自带的C API的方式对其进行操作,在Web查询模块中我们使用JDBC接口。5.2 查询功能的实现本系统的查询主要包括了图书查询和用户查询, 其主要是根据用户为查看或收集特定范围内的图书信息或读者信息而进行的操作, 服务器根据其查询条件响应执行, 再把结果返回给用户。5.2.1 图书查询的实现图书查询功能主要是根据图书信息中的书条形码、图书类别、书名、作者、出版社、所在书架等检索款目进行单条件查询,有前方一致和任意匹配两种查询方式。图书查询是图书借阅者和资料室管理员共同的功能需求, 图书借阅者是通过图书查询功能检索图书以确定资料室是否存在此书, 此书在馆否, 此书可借否等信息, 以方便进行借阅。借阅者通过图书查询能查看到图书的详细信息、馆藏信息, 其中馆藏信息仅限于借阅状态、书刊状态、预约状态。而资料室管理员查询的结果则相对需求比较多, 如借阅信息、预约信息, 主要是为了方便管理员查询此书的去向有利于管理工作。同时, 两者查询的条件也不尽相同, 因为管理员的查询需求要涉及到入库时间、价格、借阅状态等条件, 以便于对书刊的管理。所以在这里就涉及到对用户权限检查的问题, 以确认有不同需求或不同操作权限的管理员和借阅者。判断用户权限, 就根据在数据库设计设定的用户角色来差别。在这里应用到了JSP 的内部session 对象。session 对象是JSP 页面用来在用户之间分别保存用户信息, 不同用户的session 对象一般是不同的。用户登录网站后,系统为其生成一个独一无二的session 对象来记录该用户的个人信息。一旦用户退出网站, 那么该session 会自动被注销。如此一来就可以根据用户不同的角色权限, 动态生成不同的查询条件, 显示不同的查询结果。5.2.2 借阅查询的实现借阅查询是为了便于管理员和读者查询图书借阅情况的。其查询条件是根据图书条形码、图书名称、读者条形码、读者名称来对借阅情况查询, 可以是精确搜索,也可以是模糊搜索。借阅查询主要涉及到两种情况: 一类是根据图书条形码、图书名称来查询某图书当前是否被借阅、归还情况等信息;二类是根据读者条形码、读者名称来查询这一类用户借阅情况。6、测试报告6.1 测试项目1、用户管理:进行用户的添加、修改、删除和权限设置,查看功能是否能实现。2、读者管理:进行读者信息的添加、修改、删除,查看功能是否能实现。3、图书馆理:图书类型管理和图书档案管理。图书类型管理包括图书类型的添加、修改、删除以及可借天数的设置。图书档案管理包括图书基本信息的添加、修改和删除。测试各项功能检查是否能实现。4、图书借还:进行图书的借阅和归还操作,查看功能是否能实现。5、系统查询:查询图书信息和图书借阅情况,检查功能是否能实现。6、更改密码:更改个人登录系统的密码,测试该功能是否能实现。数据准备(数据操作(dao)对象和Javabean) 1.bookcaseform(书架设置javabean)1: package com.actionForm;2: import org.apache.struts.action.ActionForm;3: public class BookCaseForm extends ActionForm 4: private Integer id;5: private String name;6: /构造方法7: public BookCaseForm()8: ./get.set方法2.bookform(图书设置javabean)1: package com.actionForm;2: import org.apache.struts.action.ActionForm;3: public class BookForm extends ActionForm 4: private String author;5: private String barcode;6: private String bookName;7: private String bookcaseName;8: private int bookcaseid;9: private int days;10: private int del;11: private Integer id;12: private String inTime;13: private String isbn;14: private String operator;15: private int page;16: private Float price;17: private String publishing;18: private String translator;19: private int typeId;20: private String typeName;21: public BookForm()22: ./get.set方法6.2 测试结果1、登录页面实现代码: 主界面主要是运用的表格操作,在表格中插入图片以及文本域,按钮进行验证。9: 10: 11: 12: 图书馆管理系统13: /导入样式表14: /6-15行:验证管理员和密码15: function check(form)16: if (.value=)17: alert(请输入管理员名称!);.focus();return false;18: 19: if (form.pwd.value=)20: alert(请输入密码!);form.pwd.focus();return false;21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 管理员名称:47: 48: 49: 50: 51: 管理员密码:52: 53: 54: 55: 56: 57: 58: 59: /关闭按钮,调用window关闭事件60: 61: 62: 63: 64: 65: 66: 67: 2、 首页3、 管理员设置添加管理员权限设置4、 读者档案
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陇原检察管理办法
- 省猪肉储备管理办法
- 研究生出国管理办法
- 房产测绘管理办法
- 秦皇岛钓鱼管理办法
- 限制养犬管理办法
- 个人公积金管理办法
- 物联网销售管理办法
- 中石化投资管理办法
- 乡村道路路管理办法
- 妇科医疗风险防范
- 新《医用X射线诊断与介入放射学》考试复习题库(含答案)
- 云仓课件教学课件
- Python快速编程入门(第3版) 课件 第8章 面向对象
- ISO9001-2015质量管理体系内审培训课件
- 统编版语文二年级下册-25黄帝的传说-教学课件多篇
- 盾构始发正式安全交底
- DL∕T 1901-2018 水电站大坝运行安全应急预案编制导则
- 起重机行业市场分析报告2024年
- 北京联合大学微观经济学期末试卷
- 培训师破冰小游戏含内容
评论
0/150
提交评论