




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图书借阅管理系统详细设计说明书北京交通大学计算机与信息技术学院思源0802 刘作鸣 082740462010 年12月10 日目录1 引言31.1 编写目的31.2 背景31.3 定义31.4 参考资料42 系统运行主体说明42.1 主体分类42.2 主体描述43 程序系统的结构5 3.1 系统整体结构关系图5 3.2 子模块关系图64 系统功能描述7 4.2 连接数据库模块详细设计104.4 数据字典185 未解决的问题191 引言1.1 编写目的图书借阅管理系统是根据图书馆图书借阅的需求进行编写的。是为了图书管理员能够更方便的进行管理和读者对图书及自己借阅信息查询的快捷。对于用户实现 1)查询图书的各种信息2)查询本人的借阅信息;对于管理员实现1)查询图书的各种信息2)查询读者的各种信息3)图书入库4)办理借书证5)图书借阅和归还6)逾期未还处理7)挂失处理而编写的。此设计说明书对系统的设计框架和实现的所有功能进行了详细的阐述,以指导用户高效的使用本系统,同时也为系统的二次开发作为参考。1.2 背景本图书借阅管理系统是采用JSP 技术在给定需求的情况下直接进行软件各项功能的开发。对于系统的基本功能,自行设计其结构并进行实现。总的来看,项目属于数据库系统的高级应用开发。任务由需求方即北京交通大学计算机学院提出,由我方即北京交通大学计算机系学生负责开发实现,通过相应的开发环境从而根据给定的具体的需求而完成项目。通过实现本系统对于计算机系得学生能够了解更多的关于项目开发的具体的流程以及具体的实现方面法,特别学习和掌握具有实际应用价值的项目的开发过程,为今后从事实际的开发工作奠定基础。本饭店前台采用 B-S 结构设计模型,后台程序采用JSP 编写操纵MY SQL 小型数据库,客户机可以通过浏览器对系统进行浏览与相应的操作。1.3 定义1. B-S:即Brower/Server,浏览器/服务器,客户机上只需装有一个浏览器即可,服务器装有相应的数据库,通过web Server 进行数据的交换等操作2. JSP:JavaServer Page 动态网页标准3.MY Eclipse:一种软件开发工具4. JDBC:Java DataBase Connectivity5: My-Sql: MySQL 是一个开放源码的小型关系型数据库管理系统,开发者为瑞典MySQL AB 公司。1.4 参考资料精通 JSPJSP 网络编程JSP 数据库编程Java 语言导学2 系统运行主体说明2.1 主体分类本系统中运行主体包括以下内容:图书馆管理员及读者(系统的主要使用者)。2.2 主体描述2.2.1 用户2.2.1.1 用户定义客户是所有使用本平台应用的使用者,也可称为用户,是本系统的服务对象。在系统或相关文档中提到的用户,均视同为客户。2.2.1.2 用户分类客户按照群体进行分类可分为企业客户(包括企业、事件、政府机关等单位)、集团客户(包括家庭用户和由个人组成的非企事业和政府机关的群体)、个人客户。其中企业客户和集团客户可以建立多个子客户,个人客户则为唯一客户。JSP 图书馆借阅系统面向的主要的客户是图书馆管理员及馆内读者也即中小型集团用户。2.2.1.3 用户的管理客户的管理即用户的管理,图书馆借阅系统是一个独立的系统,系统设有固有管理员账号,用户通过该账号可建立读者的账号。管理员账号可以进行1)图书的添加和删除2)帐号的添加和删除工作3)图书和账号信息的查阅4)图书证的遗失登记5)图书的归还出借登记;读者帐号则主要是按照需求完成账号相关借阅信息和图书信息的查询。3 程序系统的结构详细说明:功能名称功能描述增加读者账号向数据库内插入读者权限账号登记遗失账号从数据库中删除遗失了的读者账号增加图书向数据库中插入新的图书信息登记读者借阅信息向数据库中插入读者账号借阅图书的信息删除读者借阅信息从数据库中删除读者账号借阅图书的信息读者信息查询查询各个读者账号的信息图书信息查询查询各类图书的信息欢迎界面系统登录角色识别功能调用连接数据库数据信息维护模块前台结果显示数据信息浏览模块 3.1 系统整体结构关系图 3.2 子模块关系图3.2.1 子模块间关系图一系统登陆和角色识别关系图输入密码登录角色选择显示登录失败页面显示登录成功否是密码输入是否正确重新输入操作参数是否合法页面功能选择执行相应操作主页面输出结果3.2.2 子模块间关系图二否是 3.3 系统界面图书馆借阅系统界面使用 JSP 生成,编写css文档及left,header,footer文档采用同一的背景风格:功能菜单为浅灰色,页面头部为深灰色,页面背景颜色为蓝色,简洁大方。设有欢迎界面,左侧页面中包含角色选择及所有的功能设置。点击相关功能按钮即可进入相应的功能页,功能页根据所需信息设置相关的表单项。集合类型的信息采用下拉列表或者信息按钮的方式进行输入。设计到日期等信息的输入框采用控件的形式输入。结果一般采用表格的形式输出。4 系统功能描述 4.1 登陆模块详细设计4.1.1 功能描述此模块主要功能是提供用户角色识别和登陆控制,通过登陆不同类型的帐号可以进行不同权限功能的操作。4.1.2 功能界面41.2.1欢迎界面4.1.2.2功能界面4.1.2.2.1读者登录界面输入正确的读者姓名和id就会显示出该读者的信息表示登陆成功:输入错误的则返回,不会出现任何信息。4.1.2.2.2 管理员登陆界面当输入正确的用户名及密码,即会在登陆框下方的页面框显示如下登陆信息:输入错误的则会出现:4.1.3 详细设计登陆模块部分,系统的初始状态采用内建帐号的模式,内建管理员账号,建立唯一管理员,管理员可以增加读者帐号。登陆后,根据不同的角色可以获得不同权限的操作。设计时,初始的管理员帐号为root,密码为1。存储读者账号的表如下所示,在登陆时验证读者号与读者姓名是否一致:表名Readers列名说明类型定义空/非空约束条件reader-id 读者idvarchar(5)非空主键,唯一reader-name 读者姓名varchar(20)非空sex 性别varchar(2)birthday 出生年月Datephone 电话Intmobile 移动电话varchar(11)card-name 证件类型varchar(8)card-id 证件号varchar(18)level 读者等级varchar(6)day 申请日期Date补充说明用来存放读者的相关信息4.1.4 性能要求要求:l 登陆帐号及密码要通用,易用,便于记忆和输入。l 登陆的时间上要求要尽可能的快,应该在用户可以接受的时间范围内。 4.2 连接数据库模块详细设计4.2.1 功能描述:数据库连接采用 JDBC 中间件实现,连接数据库的部分放于每个需要进行连接的jsp页面中,下面为测试代码和放于每个页面进行数据库连接的相应的功能代码和说明如下:package com.data;import java.sql.*;public class Connectdb private Connection conn ;private Statement stm;private ResultSet rs;public Connectdb() super();/连接数据库try this.conn = DriverManager.getConnection(jdbc:mysql:127.0.0.1:3306/bookmis, root, 1);this.stm = conn.createStatement(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();public ResultSet executeQuery(String sql)try this.rs = this.stm.executeQuery(sql); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();/通用的sql语句执行return this.rs;/* * return the conn */public Connection getConn() return conn;/* * param conn the conn to set */public void setConn(Connection conn) this.conn = conn;/* * return the stm */public Statement getStm() return stm;/* * param stm the stm to set */public void setStm(Statement stm) this.stm = stm;/* * return the rs */public ResultSet getRs() return rs;/* * param rs the rs to set */public void setRs(ResultSet rs) this.rs = rs;在jsp中连接数据库的代码段是:Connection conn = DriverManager.getConnection(jdbc:mysql:/localhost:3306/bookmis, root, 1);Statement stm = conn.createStatement();String sql = select * from borrow where +keyword+=borrow.readerid;ResultSet rs = stm.executeQuery(sql);4.2.2 性能要求:l 要尽可能减少数据操作的次数l 连接数据库的时间要尽可能的短l 写入数据库的信息是否安全要加以判断 4.3 具体功能的模块设计4.3.1 功能描述读者用户:1)查询图书的各种信息2)查询本人的借阅信息管理员用户:1)查询图书的各种信息2)查询读者的各种信息3)图书入库4)办理借书证5)图书借阅6)图书归还7)挂失处理4.3.2 性能要求:l 各项功能实现的操作方便,易用l 能选择输入的信息尽量选择输入l 对输入数据的合法性要进行相应的判断4.3.3 界面描述读者用户:1) 查询图书的各种信息页面布局2) 查询本人的借阅信息页面布局管理员用户:1) 查询图书的各种信息页面布局2) 查询读者的各种信息页面布局3) 图书入库页面布局4) 办理借书证页面布局5) 图书借阅页面布局6) 图书归还页面布局7) 挂失处理页面布局4.3.3 功能模块实现方法描述l 功能模块需要访问数据库的部分使用Connection conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/bookmis, root, 1);Statement stm = conn.createStatement();String sql = select * from borrow where +keyword+=borrow.readerid;ResultSet rs = stm.executeQuery(sql);l 特定的 SQL 语句均使用String sql 变量进行记录,各部分语句调用举例如下:图书入库:String sql = insert into books (bookid,bookname,author,publishing,categoryid,price,datein,quantityin,quantityout) values(+bookid+,+bookname+,+author+,+publishing+,+categoryid+,+price+,+datein+,+quantityin+,+quantityout+); System.out.println(sql); stm.executeUpdate(sql);图书查询:Connection conn = DriverManager.getConnection(jdbc:mysql:/localhost:3306/bookmis, root, 1);Statement stm = conn.createStatement();String sql = select * from books where +field+ = +keyword+;ResultSet rs = stm.executeQuery(sql);删除出借:String readerid = request.getParameter(readerid); String bookid = request.getParameter(bookid); String sql = delete from borrow where readerid =+readerid+ and bookid=+bookid+; System.out.println(sql); stm.executeUpdate(sql);4.4 数据字典表名Readers列名说明类型定义空/非空约束条件reader-id 读者idvarchar(5)非空主键,唯一reader-name 读者姓名varchar(20)非空sex 性别varchar(2)birthday 出生年月Datephone 电话Intmobile 移动电话varchar(11)card-name 证件类型varchar(8)card-id 证件号varchar(18)level 读者等级varchar(6)外键day 申请日期Date补充说明用来存放读者的相关信息表名Books列名说明类型定义空/非空约束条件book-id 图书idvarchar(5)非空主键,唯一book-name 图书名称varchar(20)非空author 作者varchar(20)publi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (2025年标准)规培医生协议书
- 农村生态环境保护补偿协议方案书
- (2025年标准)关于全民健身协议书
- (2025年标准)关于和解协议书
- 2026届海南省临高县新盈中学高三化学第一学期期中质量跟踪监视试题含解析
- 新材料研发材料性能测试与评价体系建设方案
- 上海市澄衷高级中学2026届化学高一上期末质量检测试题含解析
- 陕西省陕西师大附中2026届高二化学第一学期期末质量跟踪监视模拟试题含答案
- 浙江省嘉兴市嘉善高级中学2026届化学高二第一学期期中达标检测试题含解析
- 节水倡议课件
- 医疗仪器保养、维护、修理记录本
- 高产小麦品种介绍
- 创新方法教程题库题库(449道)
- 建设工程消防验收评定规则
- 山东省临沂市兰山区2022-2023学年小升初数学自主招生备考卷含答案
- 电气设备交接试验方案
- D500-D505 2016年合订本防雷与接地图集
- 北邮社电机拖动与调速技术教学包课后题解
- 学校门卫岗位职责及管理制度
- JJG 1105-2015氨气检测仪
- GB/T 17421.7-2016机床检验通则第7部分:回转轴线的几何精度
评论
0/150
提交评论