JSP课程设计《图书馆管理系统》_第1页
JSP课程设计《图书馆管理系统》_第2页
JSP课程设计《图书馆管理系统》_第3页
JSP课程设计《图书馆管理系统》_第4页
JSP课程设计《图书馆管理系统》_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象程序设计课程设计说明书题学专班姓学目:图书管理系统院: 计算机与信息工程学院业:级:名:号:计算机科学与技术计算机级班起止时间:2009.6.29-2009.7.10成绩: 课程设计任务书一、设计题目:图书管理系统二、设计内容:设计图书管理借阅系统,将用户登陆、图书查询、图书信息、图书预借、图书借阅结合在一起。用户可以在登陆以后享受以上功能。三、设计要求:1系统登陆界面包括 :用户登陆、账号、密码、注册、图书查询。2系统登录后,首页显示我的信息、我的预借、我的借阅。3使用鼠标单击系统管理,页面显示系统管理用于进行用户管理,管理员用户具有最大权限,可以全方位控制信息资源。4用户单击借阅管

2、理,显示请输入借阅号和归还号。四、工作计划:时间完成内容查找资料,确定题目,选择方案需求分析建模提交文档备注第 1天第 2天课程设计任务书设计准备阶段需求分析阶段第 3天第 4天第 5天第 6天第 7天第 8天第 9天设计建模设计阶段编码测试阶段收尾阶段详细设计与实现整理材料,撰写设计说明书课程设计考核,评定成绩课程设计说明书、设计源代码第 10 天课程设计答辩指导教师:教研室主任:2009年 6月 29日 摘要随着人类社会的发展,人类对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不

3、但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就成不可少了,本文介绍了在 Myeclipse环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发本系统的详细过程,提出实现图书馆信息管理、资源共享的基本目标,从而推动迈向数字化图书馆的步伐,并阐述系统结构设计和功能设计,从图书的入库登记到查询浏览,从借书放到图书的借阅,形成了一个整体自动化管理模式,从软件工程的角度进行了科学而严谨的阐述。关键词: Java面向对象图书管理借阅 目录课程设计任务书 . I摘要. II目录. III一、设计内容 . 1二、设计过程 . 12.1需求分析 . 12.2概要

4、设计 . 12.3详细设计 . 22.4代码实现 . 32.5程序运行与发布 . 10三、总结 . 11四、参考文献 . 11 一、设计内容设计图书管理借阅系统,将用户登陆、图书查询、图书信息、图书预借、图书借阅结合在一起。用户可以在登陆以后享受以上功能。二、设计过程2.1需求分析随着读书及图书数量的不断增加,其管理工作难度也愈来愈大,为了提高效率,减轻劳动强度,采用计算机管理日常借阅工作,就显得由为重要。在计算机飞速发展的今天,将计算机这一信息利器应用于日常管理,已是势必所然,他可以带来意想不到的效益,同时为企业的飞速发展提供了无限潜力。采用计算机管理信息系统极大的提高了管理人员的工作效率,

5、大大减少了出错率。鉴于此,选择了图书管理系统作为本次课程设计的题目。我2.2概要设计根据图书管理借阅系统的需求绘制系统结构如图图书管理系统2-1所示:用户管理图书查询分类管理添加图书删除图书用户信息用户预借用户借阅图 2-1系统结构图 2.3详细设计管理员提交登录表单以后,需要调用数据库判断管理员的用户名和密码,和用户登录的检验基本相似,管理员只有登录成功后才可以对商品进行增加,删除,修改工作。数据库详细设计:book表如表 2-1所示:表 2-1 book表列名类型字数段4BookNoNameINTEGERVARCHARVARCHARVARCHARVARCHARDATE30AuthorBoo

6、kManBrief30301024PublishDateIsbnVARCHARVARCHARINTEGERINTEGERINTEGER641284ImageFilePriceAmountRemain44bookcategory表如表 2-2所示:表 2-2 bookcategory表列名类型字数段BcNoINTEGERINTEGERINTEGERVARCHAR4BookNoCategoryNoRemark4464borrow表如表 2-3所示:表 2-3 borrow表列名类型字数段BookNoPreBorrowNoBorrowTimeRemarkINTEGERINTEGERDATETIMEV

7、ARCHARINTEGER44644Statuscategory表如表 2-4所示: 表 2-4 category表列名类型字数段CategoryNoNameINTEGERVARCHARINTEGERVARCHAR4304ParentNoRemark642.4代码实现经过前面的工作,最后在集成编辑环境中,编写的程序代码如下:package c18.dao;import java.util.List;import mons.logging.Log;import mons.logging.LogFactory;import org.hibernate.HibernateException;impo

8、rt org.hibernate.Query;import org.hibernate.Session;import c18.entity.Book;import c18.entity.BookCategory;import c18.helper.PageBean;import c18.helper.PageResult;/*图书持久化接口实现类* author yuxd*/public class BookDaoImpl extends PageDao implements BookDao /*日志操作对象*/private static final Log log = LogFactory

9、.getLog(BookDaoImpl.class); /*以会话对象作参数的构造器* param session*/public BookDaoImpl(Session session)this.session = session;/*根据图书号得到图书*/public Book get(int bookNo) throws HibernateException /得到对象return (Book)session.get(Book.class, new Integer(bookNo);/*得到所有图书(支持分页)*/public PageResult getBooks(PageBean pa

10、geBean) throws HibernateException /组成查询 sqlString sql = from Book book;/输出日志信息log.debug(getBooks: + sql);PageResult pageresult = new PageResult();/生成查询对象Query query = session.createQuery(sql);/设置分页查询数query.setFirstResult(pageBean.getPage() - 1) * pageBean.getPageSize();query.setMaxResults(pageBean.g

11、etPageSize();/得到结果pageresult.setResultList(query.list();/查询总数 if(pageBean.getCount() = 0)pageBean.setCount(getCount(sql, new Object);/设置分页信息pageresult.setPageBean(pageBean);/得到查询列表return pageresult;/*删除图书*/public void remove(Book book) throws HibernateException /删除对象session.delete(book);/*保存图书*/publ

12、ic void save(Book book) throws HibernateException /保存对象session.save(book);/*更新图书*/public void update(Book book) throws HibernateException /更新对象session.update(book);/* *保存图书分类*/public void save(BookCategory bookcategory) throws HibernateException /保存对象session.save(bookcategory);/*根据分类号得到分类下的图书数目*/pub

13、lic int getBookCountByCategory(int categoryNo) throws HibernateException /组成查询 sqlStringsql=selectcount(*)fromBookCategorybookcategorywherebookcategory.categoryNo=?;/输出日志信息log.debug(getBookCountByCategory: + sql);log.debug(categoryNo: + categoryNo);/生成查询对象Query query = session.createQuery(sql);query

14、.setInteger(0, new Integer(categoryNo);/得到结果return (Integer)query.list().get(0).intValue();/*根据分类号得到分类下图书信息(支持分页)*/publicPageResultgetBooksByCategory(intcategoryNo,PageBeanpageBean)throwsHibernateException /组成查询 sqlString sql = from Book book where exists (select bookcategory.bookNo from BookCategor

15、ybookcategory where bookcategory.bookNo=book.bookNo and bookcategory.categoryNo=?); /输出日志信息log.debug(getBooksByCategory: + sql);log.debug(categoryNo: + categoryNo);PageResult pageresult = new PageResult();/生成查询对象Query query = session.createQuery(sql);query.setInteger(0, new Integer(categoryNo);/设置分页

16、查询数query.setFirstResult(pageBean.getPage() - 1) * pageBean.getPageSize();query.setMaxResults(pageBean.getPageSize();/得到结果pageresult.setResultList(query.list();/查询总数if(pageBean.getCount() = 0)pageBean.setCount(getCount(sql, new Objectnew Integer(categoryNo);/设置分页信息pageresult.setPageBean(pageBean);/得到

17、查询列表return pageresult;/*根据图书号删除图书分类关系*/public void delBookCategoryByBook(int bookNo) throws HibernateException /得到图书对应的图书分类关系列表List list = getBookCategoryByBook(bookNo);if(list != null)for(int i=0; ilist.size(); i+) BookCategory bookcategory = (BookCategory)list.get(i);/删除图书分类关系session.delete(bookca

18、tegory);/*得到图书相关的分类关系*/public List getBookCategoryByBook(int bookNo) throws HibernateException /组成查询 sqlString sql = from BookCategory bookcategory where bookcategory.bookNo=?;/输出日志信息log.debug(delBookCategoryByBook: + sql);log.debug(bookNo: + bookNo);/生成查询对象Query query = session.createQuery(sql);que

19、ry.setInteger(0, new Integer(bookNo);/得到结果return query.list();/*根据关键字查询图书*/public PageResult findBooksByProperty(String propertyName, String propertyValue, PageBeanpageBean) throws HibernateException /组成查询 sqlString sql = from Book book where book. + propertyName + like ?;/输出日志信息 log.debug(findBooks

20、ByProperty: + sql);log.debug(propertyName: + propertyName);log.debug(propertyValue: + propertyValue);PageResult pageresult = new PageResult();/生成查询对象Query query = session.createQuery(sql);query.setString(0, % + propertyValue + %);/设置分页查询数query.setFirstResult(pageBean.getPage() - 1) * pageBean.getPag

21、eSize();query.setMaxResults(pageBean.getPageSize();/得到结果pageresult.setResultList(query.list();/查询总数if(pageBean.getCount() = 0)pageBean.setCount(getCount(sql, new Object% + propertyValue + %);/设置分页信息pageresult.setPageBean(pageBean);/得到查询列表return pageresult; 2.5程序运行与发布将此程序部署到 Tomcat服务器目录下,启动 Tomcat服务器,在浏览器地址栏输入 HTTP:/localhost:8080/c18即

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论