JSP課程設(shè)計(jì)《圖書(shū)館管理系統(tǒng)》
《JSP課程設(shè)計(jì)《圖書(shū)館管理系統(tǒng)》》由會(huì)員分享,可在線閱讀,更多相關(guān)《JSP課程設(shè)計(jì)《圖書(shū)館管理系統(tǒng)》(17頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 《面向?qū)ο蟪绦蛟O(shè)計(jì)Ⅱ》 課程設(shè)計(jì)說(shuō)明書(shū) 題 學(xué) 專 班 姓 學(xué) 目: 圖書(shū)管理系統(tǒng) 院: 計(jì)算機(jī)與信息工程學(xué)院 業(yè): 級(jí): 名: 號(hào): 計(jì)算機(jī)科學(xué)與技術(shù) 計(jì)算機(jī)級(jí)班 起止時(shí)間: 2009.6.29--2009.7.10 成績(jī): 課程設(shè)計(jì)任務(wù)書(shū) 一、設(shè)計(jì)題目:《圖書(shū)管理系統(tǒng)》 二、設(shè)計(jì)內(nèi)容:設(shè)計(jì)圖書(shū)管理借閱系統(tǒng),將用戶登陸、圖書(shū)查詢、圖 書(shū)信息、圖書(shū)預(yù)借、圖書(shū)借閱結(jié)合在一起。用戶可以在登陸以后享受 以上功能。 三、設(shè)計(jì)要求: 1.系統(tǒng)登陸界面包括 :用戶登陸、賬號(hào)、密碼、注冊(cè)、圖書(shū)查詢。 2.系統(tǒng)登錄后,首頁(yè)顯示我的信息、我
2、的預(yù)借、我的借閱。 3.使用鼠標(biāo)單擊系統(tǒng)管理,頁(yè)面顯示系統(tǒng)管理用于進(jìn)行用戶管理, 管理員用戶具有最大權(quán)限,可以全方位控制信息資源。 4.用戶單擊借閱管理,顯示請(qǐng)輸入借閱號(hào)和歸還號(hào)。 四、工作計(jì)劃: 時(shí)間 完成內(nèi)容 查找資料,確定題目,選擇方案 需求分析建模 提交文檔 備注 第 1天 第 2天 課程設(shè)計(jì)任務(wù)書(shū) 設(shè)計(jì)準(zhǔn)備階段 需求分析階段 第 3天 第 4天 第 5天 第 6天 第 7天 第 8天 第 9天 設(shè)計(jì)建模 設(shè)計(jì)階段 編碼測(cè)試階段 收尾階段 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 整理材料,撰寫(xiě)設(shè)計(jì)說(shuō)明書(shū) 課程設(shè)計(jì)考核,評(píng)定 成績(jī) 課程設(shè)計(jì)說(shuō)明書(shū)、設(shè)
3、 計(jì)源代碼 第 10 天課程設(shè)計(jì)答辯 指導(dǎo)教師: 教研室主任: 2009年 6月 29日 摘要 隨著人類社會(huì)的發(fā)展,人類對(duì)知識(shí)的需求也不斷地增長(zhǎng)。在這種形勢(shì)下,書(shū) 籍就漸漸地成為人們獲取并增長(zhǎng)知識(shí)的主要途徑,而圖書(shū)館就自然而然地在人們 的生活中占據(jù)了一定的位置,如何科學(xué)地管理圖書(shū)館不但關(guān)系到讀者求知的方便 程度,也關(guān)系到圖書(shū)館的發(fā)展,因此,開(kāi)發(fā)一套完善的圖書(shū)館管理系統(tǒng)就成不可 少了,本文介紹了在 Myeclipse環(huán)境下采用“自上而下地總體規(guī)劃,自下而上地應(yīng) 用開(kāi)發(fā)”的策略開(kāi)發(fā)本系統(tǒng)的詳細(xì)過(guò)程,提出實(shí)現(xiàn)圖書(shū)館信息管理、資源共享的 基本目標(biāo),從而推
4、動(dòng)邁向數(shù)字化圖書(shū)館的步伐,并闡述系統(tǒng)結(jié)構(gòu)設(shè)計(jì)和功能設(shè)計(jì), 從圖書(shū)的入庫(kù)登記到查詢?yōu)g覽,從借書(shū)放到圖書(shū)的借閱,形成了一個(gè)整體自動(dòng)化 管理模式,從軟件工程的角度進(jìn)行了科學(xué)而嚴(yán)謹(jǐn)?shù)年U述。 關(guān)鍵詞: Java面向?qū)ο髨D書(shū)管理借閱 目錄 課程設(shè)計(jì)任務(wù)書(shū) ........................................................................................................................ I 摘要.....................................
5、.................................................................................................. II 目錄...................................................................................................................................... III 一、設(shè)計(jì)內(nèi)容 ................................
6、........................................................................................... 1 二、設(shè)計(jì)過(guò)程 ........................................................................................................................... 1 2.1需求分析 .........................................................
7、............................................................ 1 2.2概要設(shè)計(jì) ..................................................................................................................... 1 2.3詳細(xì)設(shè)計(jì) ...........................................................................................
8、.......................... 2 2.4代碼實(shí)現(xiàn) ..................................................................................................................... 3 2.5程序運(yùn)行與發(fā)布 ....................................................................................................... 10 三、總結(jié) .....
9、............................................................................................................................ 11 四、參考文獻(xiàn) ......................................................................................................................... 11 一、設(shè)計(jì)內(nèi)容 設(shè)計(jì)圖書(shū)管理借閱系統(tǒng),將用戶登陸、圖書(shū)查
10、詢、圖書(shū)信息、圖書(shū)預(yù)借、圖 書(shū)借閱結(jié)合在一起。用戶可以在登陸以后享受以上功能。 二、設(shè)計(jì)過(guò)程 2.1需求分析 隨著讀書(shū)及圖書(shū)數(shù)量的不斷增加,其管理工作難度也愈來(lái)愈大,為了提高效 率,減輕勞動(dòng)強(qiáng)度,采用計(jì)算機(jī)管理日常借閱工作,就顯得由為重要。在計(jì)算機(jī) 飛速發(fā)展的今天,將計(jì)算機(jī)這一信息利器應(yīng)用于日常管理,已是勢(shì)必所然, 他可 以帶來(lái)意想不到的效益,同時(shí)為企業(yè)的飛速發(fā)展提供了無(wú)限潛力。采用計(jì)算機(jī)管 理信息系統(tǒng)極大的提高了管理人員的工作效率,大大減少了出錯(cuò)率。鑒于此, 選擇了圖書(shū)管理系統(tǒng)作為本次課程設(shè)計(jì)的題目。 我 2.2概要設(shè)計(jì) 根據(jù)圖書(shū)管理借閱系統(tǒng)的需求繪制系統(tǒng)結(jié)構(gòu)如圖
11、 圖書(shū)管理系統(tǒng) 2-1所示: 用戶管理 圖書(shū)查詢 分 類 管 理 添 加 圖 書(shū) 刪 除 圖 書(shū) 用 戶 信 息 用 戶 預(yù) 借 用 戶 借 閱 圖 2-1系統(tǒng)結(jié)構(gòu)圖 2.3詳細(xì)設(shè)計(jì) 管理員提交登錄表單以后,需要調(diào)用數(shù)據(jù)庫(kù)判斷管理員的用戶名和密碼,和 用戶登錄的檢驗(yàn)基本相似,管理員只有登錄成功后才可以對(duì)商品進(jìn)行增加,刪除, 修改工作。 數(shù)據(jù)庫(kù)詳細(xì)設(shè)計(jì): book表如表 2-1所示: 表 2-1 book表 列名 類型 字?jǐn)?shù)段 4 BookNo Name INTEGER VARCHAR V
12、ARCHAR VARCHAR VARCHAR DATE 30 Author BookMan Brief 30 30 1024 PublishDate Isbn VARCHAR VARCHAR INTEGER INTEGER INTEGER 64 128 4 ImageFile Price Amount Remain 4 4 bookcategory表如表 2-2所示: 表 2-2 bookcategory表 列名 類型 字?jǐn)?shù)段 BcNo INTEGER INTEGER INTEGER VARCHAR 4 Book
13、No CategoryNo Remark 4 4 64 borrow表如表 2-3所示: 表 2-3 borrow表 列名 類型 字?jǐn)?shù)段 BookNo PreBorrowNo BorrowTime Remark INTEGER INTEGER DATETIME VARCHAR INTEGER 4 4 64 4 Status category表如表 2-4所示: 表 2-4 category表 列名 類型 字?jǐn)?shù)段 CategoryNo Name INTEGER VARCHAR INTEGER VARCH
14、AR 4 30 4 ParentNo Remark 64 2.4代碼實(shí)現(xiàn) 經(jīng)過(guò)前面的工作,最后在集成編輯環(huán)境中,編寫(xiě)的程序代碼如下: package c18.dao; import java.util.List; import mons.logging.Log; import mons.logging.LogFactory; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import c18.entity.Boo
15、k; import c18.entity.BookCategory; import c18.helper.PageBean; import c18.helper.PageResult; /** *圖書(shū)持久化接口實(shí)現(xiàn)類 * @author yuxd */ public class BookDaoImpl extends PageDao implements BookDao { /** *日志操作對(duì)象 */ private static final Log log = LogFactory.getLog(BookDaoImpl.class); /** *以會(huì)
16、話對(duì)象作參數(shù)的構(gòu)造器 * @param session */ public BookDaoImpl(Session session){ this.session = session; } /** *根據(jù)圖書(shū)號(hào)得到圖書(shū) */ public Book get(int bookNo) throws HibernateException { //得到對(duì)象 return (Book)session.get(Book.class, new Integer(bookNo)); } /** *得到所有圖書(shū)(支持分頁(yè)) */ public PageResult getBooks(
17、PageBean pageBean) throws HibernateException { //組成查詢 sql String sql = "from Book book"; //輸出日志信息 log.debug("getBooks:" + sql); PageResult pageresult = new PageResult(); //生成查詢對(duì)象 Query query = session.createQuery(sql); //設(shè)置分頁(yè)查詢數(shù) query.setFirstResult((pageBean.getPage() - 1) * pageBean.get
18、PageSize()); query.setMaxResults(pageBean.getPageSize()); //得到結(jié)果 pageresult.setResultList(query.list()); //查詢總數(shù) if(pageBean.getCount() <= 0){ pageBean.setCount(getCount(sql, new Object[]{})); } //設(shè)置分頁(yè)信息 pageresult.setPageBean(pageBean); //得到查詢列表 return pageresult; } /** *刪除圖書(shū) */
19、 public void remove(Book book) throws HibernateException { //刪除對(duì)象 session.delete(book); } /** *保存圖書(shū) */ public void save(Book book) throws HibernateException { //保存對(duì)象 session.save(book); } /** *更新圖書(shū) */ public void update(Book book) throws HibernateException { //更新對(duì)象 session.update(bo
20、ok); } /** *保存圖書(shū)分類 */ public void save(BookCategory bookcategory) throws HibernateException { //保存對(duì)象 session.save(bookcategory); } /** *根據(jù)分類號(hào)得到分類下的圖書(shū)數(shù)目 */ public int getBookCountByCategory(int categoryNo) throws HibernateException { //組成查詢 sql String sql = "select count(*)
21、 from BookCategory bookcategory where bookcategory.categoryNo=?"; //輸出日志信息 log.debug("getBookCountByCategory:" + sql); log.debug("categoryNo:" + categoryNo); //生成查詢對(duì)象 Query query = session.createQuery(sql); query.setInteger(0, new Integer(categoryNo)); //得到結(jié)果 return ((Integer)query.list(
22、).get(0)).intValue(); } /** *根據(jù)分類號(hào)得到分類下圖書(shū)信息(支持分頁(yè)) */ public PageResult getBooksByCategory(int categoryNo, PageBean pageBean) throws HibernateException { //組成查詢 sql String sql = "from Book book where exists (select bookcategory.bookNo from BookCategory bookcategory where bo
23、okcategory.bookNo=book.bookNo and bookcategory.categoryNo=?)"; //輸出日志信息 log.debug("getBooksByCategory:" + sql); log.debug("categoryNo:" + categoryNo); PageResult pageresult = new PageResult(); //生成查詢對(duì)象 Query query = session.createQuery(sql); query.setInteger(0, new Integer(categoryNo));
24、 //設(shè)置分頁(yè)查詢數(shù) query.setFirstResult((pageBean.getPage() - 1) * pageBean.getPageSize()); query.setMaxResults(pageBean.getPageSize()); //得到結(jié)果 pageresult.setResultList(query.list()); //查詢總數(shù) if(pageBean.getCount() <= 0){ pageBean.setCount(getCount(sql, new Object[]{new Integer(categoryNo)})); } //
25、設(shè)置分頁(yè)信息
pageresult.setPageBean(pageBean);
//得到查詢列表
return pageresult;
}
/**
*根據(jù)圖書(shū)號(hào)刪除圖書(shū)分類關(guān)系
*/
public void delBookCategoryByBook(int bookNo) throws HibernateException {
//得到圖書(shū)對(duì)應(yīng)的圖書(shū)分類關(guān)系列表
List list = getBookCategoryByBook(bookNo);
if(list != null){
for(int i=0; i 26、ookCategory bookcategory = (BookCategory)list.get(i);
//刪除圖書(shū)分類關(guān)系
session.delete(bookcategory);
}
}
}
/**
*得到圖書(shū)相關(guān)的分類關(guān)系
*/
public List getBookCategoryByBook(int bookNo) throws HibernateException {
//組成查詢 sql
String sql = "from BookCategory bookcategory where bookcategory.bookNo=?";
//輸出日 27、志信息
log.debug("delBookCategoryByBook:" + sql);
log.debug("bookNo:" + bookNo);
//生成查詢對(duì)象
Query query = session.createQuery(sql);
query.setInteger(0, new Integer(bookNo));
//得到結(jié)果
return query.list();
}
/**
*根據(jù)關(guān)鍵字查詢圖書(shū)
*/
public PageResult findBooksByProperty(String propertyName, S 28、tring propertyValue, PageBean
pageBean) throws HibernateException {
//組成查詢 sql
String sql = "from Book book where book." + propertyName + " like ?";
//輸出日志信息
log.debug("findBooksByProperty:" + sql);
log.debug("propertyName:" + propertyName);
log.debug("propertyValue:" + propertyVa 29、lue);
PageResult pageresult = new PageResult();
//生成查詢對(duì)象
Query query = session.createQuery(sql);
query.setString(0, "%" + propertyValue + "%");
//設(shè)置分頁(yè)查詢數(shù)
query.setFirstResult((pageBean.getPage() - 1) * pageBean.getPageSize());
query.setMaxResults(pageBean.getPageSize());
//得到結(jié)果
pageresult.s 30、etResultList(query.list());
//查詢總數(shù)
if(pageBean.getCount() <= 0){
pageBean.setCount(getCount(sql, new Object[]{"%" + propertyValue + "%"}));
}
//設(shè)置分頁(yè)信息
pageresult.setPageBean(pageBean);
//得到查詢列表
return pageresult;
}
}
2.5程序運(yùn)行與發(fā)布
將此程序部署到 Tomcat服務(wù)器目錄下,啟動(dòng) Tomcat服務(wù)器,在瀏覽器地址
欄輸入 HTT 31、P://localhost:8080/c18即可執(zhí)行留言板程序。
程序運(yùn)行結(jié)果如圖 2-2所示:
圖 2-2圖書(shū)管理系統(tǒng)程序界面
三、總結(jié)
本文提出并設(shè)計(jì)了一個(gè)基于 J2EE的完整的圖書(shū)管理系統(tǒng),該系統(tǒng)整合了數(shù)據(jù)
庫(kù)技術(shù)、 JSP技術(shù)、網(wǎng)站開(kāi)發(fā)技術(shù)等。主要實(shí)現(xiàn)了當(dāng)前的圖書(shū)管理的基本功能,
由于本人的實(shí)力還沒(méi)有達(dá)到完全自己開(kāi)發(fā)的能力,于是就采用了“拿來(lái)主義”
。
雖然本系內(nèi)容很簡(jiǎn)單不夠完善,而且存在一些不足,不過(guò)通過(guò)對(duì)這個(gè)系統(tǒng)的學(xué)習(xí)
與開(kāi)發(fā),讓我更好地掌握了基于 J2EE的 Web開(kāi)發(fā)技術(shù),更深刻地理解了網(wǎng)站的
開(kāi)發(fā)流程。
在兩周的開(kāi)發(fā)中,讓 32、我明白一點(diǎn),就是測(cè)試的重要性。所謂建系統(tǒng),測(cè)試先
行,軟件工程的知識(shí)告訴我們一個(gè)系統(tǒng)的開(kāi)發(fā)從立項(xiàng)到投入運(yùn)行,
是在測(cè)試上的,這次的實(shí)際的系統(tǒng)開(kāi)發(fā)讓我增長(zhǎng)了測(cè)試的經(jīng)驗(yàn)。
很長(zhǎng)的周期都
四、參考文獻(xiàn)
[1]申吉紅、廖學(xué)峰、余建編著 JSP動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)教程 [M]北京:電子工
業(yè), 2005 105-267
[2]張海藩編著軟件工程導(dǎo)論 [M]北京 :人民郵電 2002.3 ISBN
7-115-09378-4
[3]張白一,崔尚森。面向?qū)ο蟪绦蛟O(shè)計(jì) -J2EE.西安,西安電子科技大學(xué)出版
社 2003.1 33、
課程設(shè)計(jì)成績(jī)?cè)u(píng)定表
質(zhì)量評(píng)價(jià)指標(biāo)
評(píng)價(jià)項(xiàng)目
學(xué)習(xí)態(tài)度
具體要求
滿分得分
學(xué)習(xí)認(rèn)真,態(tài)度端正,遵守紀(jì)律,
出勤情況良好,能夠獨(dú)立完成設(shè)計(jì)
工作。
20
20
按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工
作量飽滿,難度適宜。
工作量
設(shè)計(jì)方案正確、表達(dá)清楚;設(shè)計(jì)思
路、方法科學(xué)合理;達(dá)到課程設(shè)計(jì)
任務(wù)書(shū)規(guī)定的要求;圖、表、文字
表達(dá)準(zhǔn)確規(guī)范,上交及時(shí)。
設(shè)計(jì)說(shuō)明書(shū)質(zhì)量
30
30
陳述簡(jiǎn)明扼要,思路清晰,清楚流
答辯陳述和回答問(wèn)題
利,回答問(wèn)題準(zhǔn)確,基本概念清楚,
有理有據(jù),有一定深度。
評(píng)定成績(jī)
評(píng)定人員簽名
年月日
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中生物對(duì)照實(shí)驗(yàn)專題復(fù)習(xí)課件
- 初中物理資源九年級(jí)第十五單元課件串并聯(lián)識(shí)別
- 咯血與嘔血課件
- What's_your_number_課件
- 外研版七下Module3Unit1(教育精品)
- 浙美版三年級(jí)上冊(cè)美術(shù)第15課-剪雪花教學(xué)ppt課件
- 蘇教版六年級(jí)下冊(cè)數(shù)學(xué)正比例和反比例的意義課件
- 蘇教版五下《單式折線統(tǒng)計(jì)圖》教研課件
- 固態(tài)相變概論
- 三角形全等的判定復(fù)習(xí)-課件2
- 太陽(yáng)能發(fā)展趨勢(shì)課件
- 道路工程監(jiān)理最新規(guī)劃范本課件
- SPC及CPK教程(理論篇)課件
- Travel-Plan旅行計(jì)劃-PPT
- 新冠肺炎疫情期間醫(yī)務(wù)人員防護(hù)技術(shù)指南