




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录1.需求分析21.1需求说明21.2需求功能分析22.系统设计22.1权限设计22.2功能模块设计32.2.1模块关系图32.2.2功能模块设计32.3用例图42.4组件图53.数据库设计73.1 表74.系统实现85.分析与小结105.1知识点总结115.2尚待改进的地方126.参考文献127.附录:项目开发进度安排121. 需求分析1.1 需求说明图书管理系统是目前一种典型的WEB应用,涵盖了进行WEB应用程序设计的多种基本技能。图书管理系统通常分为两部分:用户端和后台管理端。前者用于用户借阅图书,后者主要用于对用户及图书进行维护。图书管理系统面向学校、图书馆等部门的书籍管理、浏览和发布系统,通过将海量资源、信息管理和网络发布系统的进行有机结合,不仅能够充分满足学生对知识的渴求,充实学校的教育资源,而且不受时间和空间限制,让学生随时随地地获取知识。所以图书馆管理系统的应用要达到能快速查找到书籍的索书号,能查询图书的借阅情况等目的。能够方便读者借阅图书。1.2 需求功能分析(1) 图书管理:记录每个图书的基本信息,包括书名、作者、购置日期、单价等;(2) 借阅管理:能完成图书的借阅管理,以及图书状态的变更; (3) 读者管理:读者增减、查询,记录读者所在的部门等信息;实现管理员及其帐号分配等;(4) 查询功能:能在图书页查看该图书所有的被借阅历史;能在读者页查看该读者所有的借阅历史以及当前需要所借书目信息;(5) 催还功能:能统计当前需要催还的图书书目;(6) 登陆与安全: 页面有不同的权限,一般页面所有人可以访问,管理员页面需要有管理员权限才能访问;2. 系统设计2.1 权限设计本系统有管理员和用户两种权限,各自可执行的操作不同。使用者权限通过注册和登陆实现。(1) 管理员管理员主要负责图书的添加、删除、编辑操作,以及用户的添加、删除操作。(2) 普通用户普通用户可检索并查看图书基本信息及借阅记录。(3) 注册用户注册用户除了可使用普通用户功能外,还可借阅、归还书籍,并查看自己的借阅记录。2.2 功能模块设计2.2.1 模块关系图主页管理员普通用户注册用户检索图书查看图书情况用户主页查看借阅历史修改个人资料管理员主页查看催还书目添加用户编辑用户添加书目编辑书目2.2.2 功能模块设计(1) 普通用户/读者检索图书普通用户与注册用户(亦称为读者)都有各自的SearchBook.jsp,该页包含通过书名、作者查询书籍,以及显示所有符合条件的书目。用户通过点击列出书目相应的链接BookDetail.jsp可查看书籍的基本信息与其借阅历史。注册用户在BookDetail.jsp中有借阅书籍按钮,可供注册用户借阅书籍。(2) 读者登录&退出Index.jsp中含有读者登录UserLogin.jsp的链接。而在UserIndex.jsp中含有读者注销的链接。(3) 读者修改个人信息PersonalInfo.jsp显示部分可修改已存在信息,注册用户可在相应栏更改个人信息。(4) 读者借阅图书借阅书籍按钮在BookDetail.jsp中。(5) 读者归还图书归还图书按钮在ShowRecord.jsp中(6) 查看读者借阅历史注册用户可在ShowRecord.jsp中查看所有自己借阅的历史情况。此外,ShowRecord.jsp中操作栏含有未归还书籍的归还按钮,注册用户可点击还书。(7) 管理员登录&退出Index.jsp中含有管理员登录AdminLogin.jsp的链接。而在AdminIndex.jsp中含有管理员注销的链接。(8) 管理员编辑用户(增删查)在AdminIndex.jsp中点击UserList.jsp,管理员可查看所有注册用户的基本信息,并可增添、删除注册用户。(9) 管理员编辑图书(增删改查)在AdminIndex.jsp中点击BookList.jsp,管理员可查看所有馆中已存在的书目的基本信息,并可对其进行增添、删除、修改。(10) 管理员查看需要催还书目在AdminIndex.jsp中点击ShowOvertimeBook.jsp,管理员可查看所有借阅超过30天的借阅情况,便于管理员通知相应用户还书。2.3 用例图2.4 组件图组件图 普通用户/读者检索图书组件图 读者登录&退出组件图 读者修改个人信息组件图 借阅图书组件图 归还图书组件图 查看读者借阅历史组件图 管理员登录&退出组件图 管理员编辑用户(增删查)组件图 管理员编辑图书(增删改查)组件图 查看需要催还书目3. 数据库设计3.1 表图书 book(item)注册用户 user管理员admin借阅记录lend4. 系统实现4.1 优化设计部分1) 在Context.xml中编写JDBC内容,含用户名,密码,数据库名称等信息。这样,不用再重复此段无效代码。2) 用户查看自己借阅记录页面ShowRecord.jsp含有还书链接。后端实现还书需要根据其借阅号以及书号分别修改借阅情况表与书目表的借阅、归还情况字段,即此时需要传递多个值。a href= 3) 在BookList.jsp点击“修改”按钮,进入DispBookAction.java已便修改时显示原始信息。在后端实现修改书目部分,而后调用 ModifyBookAction.java。此时若该Action出错,则会返回ModifyBook.jsp,但此过程并未经过DispBookAction,也就是说显示内容丢失。解决方案如下:public void setId(int id) this.id = id;tryBookService bookSvc = BookService.getInstance();Item item = bookSvc.getItem(id);ActionContext ac = ActionContext.getContext();HttpServletRequest request= (HttpServletRequest)ac.get(ServletActionContext.HTTP_REQUEST);request.setAttribute(item, item);catch(BMException e)addActionError(e.getMessage();4) 本系统涉及多个列表显示,问题在于当数据库中没有相关数据时,列表表头始终会显示出来。利用c标签中的EL表达式则可解决这一问题。 编号 目前暂无需要催还的书目 4.2 设计分析(1) 本系统后端实现部分使用的是Struts2框架。Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。通俗来说,Struts2结构为:Action Service DAO(2) Web.xml中编写Struts2的过滤器,目的是使系统java代码部分全部使用Struts框架。struts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2/* (3) Web.xml编写权限的过滤器,方便限制不同权限使用者使用不同功能UserFilterfilter.UserFilter UserFilter/user/* AdminFilterfilter.AdminFilter AdminFilter/admin/* 5. 分析与小结5.1 知识点总结1) Mysql的bool与tinyint(1)mysql是不支持bool类型的,所以,当把一个数据设置成bool类型的时候,数据库会自动转换成tinyint(1)的数据类型,其实这个就是变相的bool。 默认值也就是1,0两种,分别对应了bool的true和false2) 数据库中,字段名不可与数据库关键字冲突。例如:return3) DAO与数据库对应4) Boolean类型变量的getter是isXxx,而不是getXxxisBoolean()方法优先于getBoolean()方法5) 校验器分为字段校验和非字段校验6) maxInclusive : 定义数值的上限。所允许的值必须小于或等于此值。maxExclusive :定义数值的上限。所允许的值必须小于此值。7) 在input标签中添加step属性,此例子中将step设为”0.01”,即可以输入含两位小数的数字。(仅输入含一位小数或整数亦可) 即step属性功能为控制合法数字间隔8) Action导包使用 import java.util.Date;而非Struts的Date9) 注释验证器 通过 get方法进行验证10) 只要不写required验证器就 允许为空;之后其余验证器是否验证根据 短路校验(short-circuit)决定11) frameset与body不可共用FRAMESET 元素是 FRAME 元素的容器。HTML 文档可包含 FRAMESET 元素或 BODY 元素之一,而不能同时包含两者。12) 没有else,当需要使用else的时候,可以用来取代结构。或使用,但s标签与c标签区别不小,有些功能s标签中并没有提供5.2 尚待改进的地方1) 将Book与Item实体类分开,亦即合并同种书目,在普通用户及注册用户可见页面上仅显示其数量,而不全部显示2) 设置添加图书的购买日期不可超过当前实际日期3) 图书显示的available字段内容以及借阅情况的isReturn字段内容在jsp中利用c标签及EL表达式将其显示为中国形式4) 补全所有在后端抛出异常信息在jsp页面中的错误提示5) 使用bootstrap模板,使前端页面更加美观6) 补充其他功能。例如:预约书籍等6. 参考文献
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国土壤污染修复项目创业计划书
- 中国家校互动系统项目创业计划书
- 中国肉禽鱼类制品项目创业计划书
- 中国开封项目创业计划书
- 中国精准农业软件项目创业计划书
- 中国计算机通信及数据传输项目创业计划书
- 中国柠檬种植项目创业计划书
- 中国高速光纤传感器项目创业计划书
- 中国钓鱼项目创业计划书
- 内蒙古饲料项目创业计划书
- 2025年辽宁省高考生物试卷(含答案)
- 2025年全国统一高考数学试题全国二卷
- 门窗安装考试题及答案
- 2025佛山市顺德区辅警考试试卷真题
- 旅游度假区运营管理方案
- 2025届高三语文最后一课
- 中国数据中心产业发展白皮书023年
- 创新创业创造:职场竞争力密钥智慧树知到期末考试答案章节答案2024年上海对外经贸大学
- 医院检验科实验室生物安全程序文件SOP
- 中外古典园林史-南京林业大学中国大学mooc课后章节答案期末考试题库2023年
- 有关建立《涉农贷款专项统计制度》的通知(doc 72页)
评论
0/150
提交评论