




免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
综合课程设计报告 姓 名:尹晓奇 学 号:2008082228 班 级:08级软件02班 指导老师:王鹏杰 魏晓鸣基于WEB的图书借阅及管理系统开发1. 系统分析1.1 需求分析本系统是一款配合实体图书馆的查询,借阅,和管理图书的系统,具体有如下需求功能:a) 必须持有借书卡的用户才能借书,可以归还图书,如果超期要显示罚款,缴纳罚款处理后,才允许继续借书。b) 所有用户都可以在网页上搜索图书,显示在网页上的图书要有详细信息c) 系统提供即将到期提醒,当某用户的某本书即将到期时,系统提醒用户。d) 图书管理员可以添加图书,修改图书,删除图书等,可以进行图书进货,图书报废处理。e) 系统管理员可以添加用户,为用户分配借书卡号,设置默认密码;可以删除用户。f) 用户以借书卡考号和密码可以登录读者信息系统,读者信息系统中显示该用户的图书借阅历史,目前在借图书;用户可以在这里对某本图书进行预约,可以在这里续借图书(续借最长时间为1个月);这里可以显示该用户已有的图书预约信息;可以显示用户的基本信息。用户可以对自己的基本信息进行修改1.2功能分析图书借阅及管理系统用户端界面借记卡管理图书管理图书分类管理直接搜索精细搜索 登录登录息信人个系统管理图书借阅管理阅借书图息信约预1 用户端界面 直接搜索:用户直接在搜索框内输入查询的书名或作者,即可查看图书馆内是否有藏书。 精细搜索:用户可通过图书类型,出版社,ISBN等进行精细搜索。 拥有借记卡的用户可以登录,初始密码为123登录后可进行如下操作:1 个人信息:查看修改个人资料,修改密码。2 图书借阅:查看当前借阅和历史借阅。3 预约信息:查看当前预约图书。2 系统管理 借记卡管理:创建,查看,修改,删除卡信息。 图书分类管理:创建,查看,修改,删除图书分类。 图书管理:插入,删除,修改图书。 图书借阅管理:图书解除与归还(超期,丢失,损坏等的罚款)2. 数据库设计2.1数据库概念结构设计根据需求分析可以规划出的实体有:管理员实体、借记卡实体、图书实体、图书分类实体。实体之间关系的E-R图,实体之间关系如下图所示: 、借记卡借书图书管理管理员用户名密码书名作者 馆藏地卡号密码 姓名图书分类父类本类NnNnNnNn条码号借记卡号借阅日期应还日期续借状态还书条码号 事务预约借阅日期借阅日期 2.2 数据库逻辑结构设计表1:借记卡信息表(card)字段名含义类型Cardnum卡号,主键StringPassword密码StringName真实姓名StringPosition职位StringEmailEmailStringGrade等级intAdmition状态StringBooknum现借书数int表2:图书分类信息表(bookclassify)字段名含义类型Fateher父类StringOwn本身,主键String表3:图书基本信息表(bookinfo)字段名含义类型Searchnum索书号,主键StringIsbnISBNStringBookname书名StringAuthor作者StringPrice定价IntPress出版社StringPicture封面StringType类型StringSubject分类StringIntroduce简介StringLocation馆藏地StringIndate入馆日期StringTotlecount馆藏数IntNowcount在馆数IntPordercoun预约数Int表4:图书状态信息表(book)字段名含义类型Booknum条码号,主键StringSearchnum索书号StringBorrow借阅状态StringPorder预约状态String表5:借阅图书信息表(borrowbook)字段名含义类型Booknum条码号,主键StringBorrowcard借记卡号StringBorrowdate节约时间StringReturndate应还时间StringReborrow续借状态String表6:预约图书信息表(porderbook)字段名含义类型Booknum条码号,主键StringBorrowcard借记卡号StringPorderstartdate预约计时StringPorderenddate失效时间String表7:借阅历史信息表(borrowhistory)字段名含义类型Booknum条码号,主键StringBorrowcard借记卡号,主键StringBorrowdate借阅日期,主键StringBackdate归还日期StringFair事务StringMoney罚款Int3. 系统设计3.1 主页搜索模块程序流程图及文件调用结构图:查看图书信息是否找到预约显示结果是否可以预约否是图1搜索和预约(前提登录)firstPage.jsp搜索true选择搜索类型输入搜索内容首页是否无作为SearchServlet.javasearchResult.jspfalseBookInfoBeanDo.java查看SearchServlet.javabookInfo.jspBookInfoBean.javaBookBeanDo.javaBookBean.java预约PorderServlet.javaPorderBookBeanDo.javaPorderBookBean.javajsp页面列表如下表所示: jsp文件名功能firstPage.jsp主页搜索界面searchResult.jsp搜索结果界面bookInfo.jsp图书信息界面实现该功能模块所涉及的重要类包括:编号类名功能说明1BookInfoBean封装图书基本信息数据类2BookBean封装图书状态信息数据类3PorderBookBean封装图书预约信息数据类4BookInfoBeanDo改变预约数5BookBeanDo改变预约状态6PorderBookBeanDo添加预约信息 (1) BookInfoBeanDo类返回值方法名功能参数说明booleanchangePorder1改变预约数String seaerchnum(2) BookBeanDo类返回值方法名功能参数说明StringporderBook改变预约状态String seaerchnum(3) PorderBookBeanDo类返回值方法名功能参数说明booleanaddPorder添加预约信息String booknumString carnumd3.2 借记卡管理模块程序流程图及文件调用结构图:修改信息是否找到删除显示结果否是图2 借记卡管理masterHome.jsp新建卡输入搜索内容借记卡管理修改cardInsert.jspcardShow.jspCardBeanDo.java搜索CardBean.javaCardServlet.java查看卡信息选择搜索类型修改删除jsp页面列表如下表所示: jsp文件名功能cardInsert.jsp新建借记卡界面cardShow.jsp查看借记卡界面cardUpdate.jsp修改借记卡界面实现该功能模块所涉及的重要类包括:编号类名功能说明1CardBean封装借记卡信息数据类2CardBeanDo对借记卡的增删改查 CardBeanDo类返回值方法名功能参数说明booleannewcard新建卡String s,String frombooleannewcard修改卡String s,String fromArrayListshowCard查看卡String kind,String infoBooleandeleteCard删除卡String s是否找到显示结果否是图3 图书借阅管理管理masterHome.jsp借出图书借阅管理bookBorrow.jspbookback.jspBorrowServlet.java搜索BookInfoServlet.java归还输入条码号输入条码号是否找到显示结果是输入借记卡号借出正常归还罚款是否BookInfoBeanDo.javaBookInfoBean.javaBorrowHistory.javaBorrowBookBeanDo.javaBookBeanDo.java3.3 图书借阅管理模块程序流程图及文件调用结构图:jsp页面列表如下表所示: jsp文件名功能bookBorrow.jsp借书界面bookback.jsp还书界面实现该功能模块所涉及的重要类包括:编号类名功能说明1BookInfoBeanDo修改在馆数量2BorrowBookBeanDo添加借书信息3BookBeanDo修改借书状态 BookInfoBeanDo类返回值方法名功能参数说明booleanchangeBorrow减少在馆数量String searchnumbooleanchangeBack增加在馆数量String booknumBorrowBookBeanDo类返回值方法名功能参数说明booleanaddBorrow添加借书信息String booknum,booleandeleteBorrow删除借书信息String booknumBookBeanDo类返回值方法名功能参数说明booleanborrowBook修改状态String booknum,booleanbackBook修改状态String booknum3.4 用户图书借阅查看模块程序流程图及文件调用结构图:是否找到显示结果否是图4用户图书借阅查看customerHome.jsp当前借阅图书借阅cBorrowNow.jspacBorrowHis.jspBorrowBookBeanDo.java搜索BorrowHistoryBeanDo.java历史借阅jsp页面列表如下表所示: jsp文件名功能cBorrowNow.jsp当前借阅界面cBorrowHis.jsp历史借阅界面实现该功能模块所涉及的重要类包括:编号类名功能说明1BorrowBookBeanDo显示当前借阅2BorrowHistoryBeanDo显示历史借阅 BorrowBookBeanDo类返回值方法名功能参数说明ArrayListshowborrow返回当前借阅String kind,String infoBorrowHistoryBeanDo类返回值方法名功能参数说明ArrayListshowHistory返回历史借阅String kind,String info4. 系统实现(1)用户搜索:将用户搜索的内容及类型传到searchServlet,然后调用BookInfoBeanDo中的showPage()方法,查询bookinfo表中是否存在用户搜索的内容,如果存在则显示出来,否则提示未找到。如果找到,用户可以点击查看详细信息主要代码如下:if(from.equals(searchPage)int pageNow = Integer.parseInt(request.getParameter(pageNow); BookInfoBeanDo bd = new BookInfoBeanDo(); int pageCount=bd.getPageCount(kind, info);ArrayList al = bd.showPage(pageNow, kind, info); request.setAttribute(al, al); request.setAttribute(pageCount, pageCount); request.setAttribute(pageNow, pageNow); request.getRequestDispatcher(searchResult.jsp).forward(request, response); if(from.endsWith(bookinfo) BookInfoBeanDo bd = new BookInfoBeanDo(); ArrayList al1= bd.showInfo(kind,info); BookBeanDo bb = new BookBeanDo(); ArrayList al2 = bb.showbook2(kind,info); request.setAttribute(infoal, al1); request.setAttribute(bookal, al2); request.getRequestDispatcher(bookInfo.jsp).forward(request, response); (2)卡信息管理:加查看修改将信息传到cardServlet,由其调用cardBeanDo中的newCard 方法实现并返回boolean值,判断是否添加成功ArrayList al = new ArrayList();try ConnDB condb = new ConnDB(); con = condb.getConn(); String sql = select * from card where +kind+=+info; System.out.println(sql); sm = con.prepareStatement(sql); rs = sm.executeQuery(); while(rs.next() CardBean cb = new CardBean(); cb.setCardnum(rs.getString(1); . cb.setBooknum(rs.getInt(8); al.add(cb); (3)借阅登录查看:主要代码:public boolean addBorrow(String booknum,String cardnum,String date1,String date2)boolean b = false;try ConnDB condb = new ConnDB(); con = condb.getConn(); String sql = insert into borrowbook values(+booknum+,+cardnum+,+date1+,+date2+,未续借); System.out.println(sql); sm = con.prepareStatement(sql); int i = sm.executeUpdate(); if(i!=0)b = true; catch (Exception e) e.printStackTrace();finallythis.close();return b;(3)还书历史:主要代码:function getDate() var myDate = new Date(); var month = myDate.getMonth()+1; /获取当前月份(0-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业设计色彩课件
- 年度岗位安全培训计划课件
- 年度安全检查培训计划表课件
- 年度安全培训总结报道课件
- 2024年湖南能源集团招聘考试真题
- 威尼斯的小艇教学课件
- 威亚安全生产培训记录课件
- Florbetaben-生命科学试剂-MCE
- FAPI-P8PN-生命科学试剂-MCE
- exo-α-Arabinofuranosidase-Caldicellulosiruptor-saccharolyticus-生命科学试剂-MCE
- 药房管理规章制度目录
- 中职第1课 社会主义在中国的确立和探索试题
- 2025年辽宁省交投集团招聘笔试参考题库含答案解析
- 2024年版高尔夫球场场地租赁及会员服务协议3篇
- 香港 信托合同范本
- 少先队活动课《民族团结一家亲-同心共筑中国梦》课件
- 阀门培训课件
- 《焦化机械设备维护检修标准》
- DB11∕T 899-2019 盆栽蝴蝶兰栽培技术规程
- ISO27001信息安全管理体系培训资料
- 2024年上半年全国燃气事故分析报告
评论
0/150
提交评论