下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、圖書管理系統(tǒng)詳細設計說明 書作者:日期:K圖書管理系統(tǒng)詳細設計說明書2019年10月引言10/5/2019目錄1.1編寫目的.1.2項目背景.1.3定義.1.4參考資料.總體設計.2.1需求概述.2.2軟件結構.程序描述 .3.101 登陸模塊.3.202 管理模塊. . 錯誤! 未定義書簽3.3031 圖書信息查詢模塊 . .錯誤! 未定義書簽3.4032 學生信息查詢模塊 . .錯誤! 未定義書簽3.5021 入庫管理模塊 . .錯誤! 未定義書簽3.6022 學生借書模塊 . .錯誤! 未定義書簽3.7023 學生還書模塊 . .錯誤! 未定義書簽3.8024 圖書注銷模塊 . .錯誤!
2、 未定義書簽3.9接口設計. . 錯誤! 未定義書簽11112223355測試要點3.1045USER第6頁10/5/2019文檔名稱:詳細設計規(guī)格說明書項目名稱:圖書館管理系統(tǒng)項目負責人:陳新光編寫 TEST年月日校對所有小組成員年月日審核所有小組成員年月日批準XXX年月日開發(fā)單位組員: TEST1 TEST2 TEST3USER第1頁10/5/20191 引言1.1 編寫目的圖書管理系統(tǒng)詳細設計是設計的第二個階段,這個階段的主要任務是在圖書管理系統(tǒng)概要設計書基礎 上,對概要設計中產(chǎn)生的功能模塊進行過程描述,設計功能模塊的內(nèi)部細節(jié),包括算法和詳細數(shù)據(jù)結構, 為編寫源代碼提供必要的說明。概要設
3、計解決了軟件系統(tǒng)總體結構設計的問題,包括整個軟件系統(tǒng)的結構、模塊劃分、模塊功能和模 塊間的聯(lián)系等。詳細設計則要解決如何實現(xiàn)各個模塊的內(nèi)部功能,即模塊設計。具體的說,模塊設計就是 要為已經(jīng)產(chǎn)生的圖書管理各子系統(tǒng)設計詳細的算法。但這并不等同于系統(tǒng)實現(xiàn)階段用具體的語言編碼,它 只是對實現(xiàn)細節(jié)作精確的描述,這樣編碼階段就可以將詳細設計中對功能實現(xiàn)的描述,直接翻譯、轉化為 用某種程序設計語言書寫的程序。1.2 項目背景根據(jù) XX 學校希望能夠充分利用現(xiàn)代科技來提高圖書管理的效率,在原有的辦公系統(tǒng)基礎上進行擴展,將一些可以用計算機來管理的都進行計算機化,使得圖書館管理人員工作更加方便,工作效率也更加的高1
4、.3 定義?Mysql :數(shù)據(jù)庫管理軟件?DBMS :數(shù)據(jù)庫管理系統(tǒng)?Windows 2000/2003/XP :運行環(huán)境?JSP :軟件開發(fā)語言?Myeclipse :開發(fā)工具1.4 參考資料軟件工程導論一一第 5 版張海藩編著清華大學岀版社USER第2頁10/5/2019實用軟件工程Leszek A.Maciaszek Bruc Lee Liong 著機械工業(yè)岀版社2 總體設計2.1 需求概述按照需求分析文檔中的規(guī)格要求,使用條形碼掃描器進書、借書、還書,使得信息傳遞準確、流暢同時,系統(tǒng)最大限度地實現(xiàn)易安裝,易維護性,易操作性,運行穩(wěn)定,安全可靠。USER第3頁10/5/20192.2 軟
5、件結構系統(tǒng)由3大模塊,6小模塊組成:USER第4頁10/5/2019序號編號 名稱1,01登陸模塊2,02管理模塊3,031圖書信息查詢模塊4,032學生信息查詢模塊5,021入庫管理模塊6,022學生借書模塊7,023學生還書模塊8,024圖書注銷模塊9,040基礎信息設置USER3 程序描述3.101 登陸模塊具體格式見下表:功能編號01功能名稱登陸模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-26頁碼第5頁3.1.1功能流程圖功能流程圖如下圖所示一-失敗.需要說明的問題:(1) 錄入項檢測使用javascript實現(xiàn)(各項必須非空)(2)登
6、陸.jsp頁面也包含查詢按鈕,在此的登陸.jsp提交的數(shù) 據(jù)只是用戶名和密碼。3.1.2功能描述(1)功能類型:查詢數(shù)據(jù)(2)功能描述:提高系統(tǒng)的安全性(3)前提業(yè)務:無(4)后繼業(yè)務:02(管理模塊)(5)功能約束:權限約束USER第6頁10/5/2019/(6)約束描述:(7)操作權限:圖書館管理員3.1.3界面設計(1)基礎信息處理動作說明:動作編口, 號動作名稱動作描述A01登陸點擊登陸按鈕提交數(shù)據(jù) 到登陸數(shù)據(jù)處理.jsp頁面A02重至點擊退重至按鈕將當前信息恢復原先狀態(tài)A03圖書信息查詢點擊將頁面轉至到圖書 信息查詢.jsp頁面A04學生信息查詢點擊將頁面轉至學生信息查詢.jsp頁面
7、A05基礎信息點擊將顯示基礎信息(2)數(shù)據(jù)要求(1)功能類型:數(shù)據(jù)查詢(2)數(shù)據(jù)描述:頁面顯示錄入字段如下:字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示管理員ID10文本框YN管理員密碼15passwordYN3.1.4登陸數(shù)據(jù)處理jsp的內(nèi)部邏輯登陸數(shù)據(jù)處理:關鍵點兩點:1,數(shù)據(jù)庫連接;2,記錄登陸信息及信息處理;USER第7頁10/5/20191,數(shù)據(jù)庫連接:如下:publicclass lib_system_C onnexte ndsObjectpubliclib_system_C onn()privateConn ecti onconn = n ull ;privateResultS
8、etrs ;Stringre =;/設置你的數(shù)據(jù)庫 ipStri ngdbip =127.0.0.1;/設置你的數(shù)據(jù)庫用戶名和密碼:Stri nguse = root ;Stri ngpass = 860409;/設置您的數(shù)據(jù)庫名Stri ngdbName = lib_system ;publicjava.sql.C onn ecti on getC onn()try Class. forName ( org.gjt.mm.mysql.Driver).newlnstance();Stri ng url= jdbc:mysql:+dbip +:3306/ +dbName+?user= +use
9、+&password= +pass +&use Uni code=true&characterE ncod in g=GBK;conn = DriverMa nager.getC onn ecti on(url);catch (Excepti on e)e.pri ntStackTrace();returnthis . conn ;/在 Mysql 建立 lib_system數(shù)據(jù)庫,之后將與數(shù)據(jù)操作相關數(shù)據(jù)與該數(shù)據(jù)庫相連;2,記錄登陸信息及信息處理:當用戶點擊“登陸”按鈕之后,數(shù)據(jù)將提交到登陸數(shù)據(jù)處理.jsp頁面。 取得帳號密碼這兩個從頁面?zhèn)魅氲闹担缓蟾鷶?shù)據(jù)庫當中管理
10、員表中的賬號和密碼比 較。如果正確的話,在JSP的SESSION中存入一個標記屬性,表示當前已經(jīng)有 管理員登陸了。處理完畢后,跳轉到管理頁面,如果失敗,則提示登陸失敗,并 重新進入到登陸頁面。具體的邏輯如下:USER第8頁10/5/2019USER第9頁10/5/20193.1.5存儲分配管理員表:(admi n)USER第10頁10/5/2019序號字段名類型長度精度小數(shù)默認允許N 主鍵說明位數(shù)值空1(admin_ID)管理員 Int10VID2(admin_password) Char15管理員密碼3(admin_quanxian) Nvarchar 15權限3.202 管理模塊具體格式見
11、下表功能編號02功能名稱管理模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-26頁碼第8頁3.2.1功能流程圖功能流程圖如下所示:需要說明的問題:在選擇相應的業(yè)務時,需要在當前的頁面顯示;并且在管理頁面內(nèi),默認顯USER第11頁10/5/2019示圖書查詢頁面。322功能描述(1)功能類型:其他功能概述:總體歸納圖書館管理功能(3)前提業(yè)務:登陸模塊(01)后續(xù)業(yè)務:021,022,023,024,03(5)功能約束:權限約束約束描述:操作權限:圖書館管理人員323界面設計(1)基本信息處理動作說明如下:動作編號動作名稱動作描述A01入庫管理點擊按
12、鈕將頁面轉至入庫管理.jsp頁面A02學生借書點擊按鈕將頁面轉至學生借書.jsp頁面A03學生還書點擊按鈕將頁面轉至學生還書.jsp頁面A04圖書注銷點擊按鈕將頁面轉至圖書注銷.jsp頁面A05圖書查詢點擊按鈕將頁面轉至圖書查詢.jsp頁面(2)數(shù)據(jù)要求USER第12頁10/5/2019功能類型:其他3.3 031 圖書信息查詢模塊具體格式如下:功能編號031功能名稱圖書信息查詢模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-26頁碼第10頁331功能流程圖功能流程圖如下圖:需要說明的問題:錄入項檢測使用javascript來實現(xiàn)(各項非空);操作
13、權限:面向所有用戶失敗圖書查詢數(shù)據(jù)處理.jspUSER第13頁10/5/20193.3.2功能描述(1) 功能類型:查詢數(shù)據(jù)USER第14頁10/5/2019功能概述:顯示查詢結果(3)前提業(yè)務:無后繼業(yè)務:(5)功能約束:沒有約束;約束描述:操作權限: 面向所有用戶333界面設計(1)基礎信息處理F表是動作說明:動作編號動作名稱動作描述A01確定點擊按鈕提交數(shù)據(jù)到圖 書查詢數(shù)據(jù)處理.jsp頁面A02學生信息查詢點擊按鈕生信息查詢將頁面轉至學.jsp頁面(2)數(shù)據(jù)要求(1)功能類型:數(shù)據(jù)查詢(2)數(shù)據(jù)描述:頁面顯示字段見下表:字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示請選擇查詢類型20下拉
14、列表丫N請輸入查詢內(nèi)容200文本框丫N(3)圖書信息查詢的輸出項書名USER第15頁10/5/2019圖書類型作者譯者ISBN岀版社價格書架名稱現(xiàn)存量簡介書名圖書類型334模塊內(nèi)部邏輯USER第16頁10/5/2019X*1,Search.jsp用于顯示界面的內(nèi)容,給用戶顯示一個查詢接口2,Lib_query.jsp用來調(diào)度所有的頁面,它根據(jù)傳入的參數(shù) 來決定包含哪一個jsp頁面來顯示內(nèi)容;在lib_query.jsp頁面中,它根據(jù)傳入的參數(shù)來決定包含哪一個jsp頁面來顯示內(nèi)容;則可以通過”/,利用jsp:include標簽來被動態(tài)加載發(fā)送到相應頁面;3,chuli.jsp用來處理數(shù)據(jù)查詢和顯
15、示查詢到的結果列表。 在這個頁面中,數(shù)據(jù)要求是以列表的形式顯示到輸出頁面。 由于查詢到的結果可能過多,所以采用分頁形式顯示; 對于分頁功能的內(nèi)部邏輯:4,View.jsp用來顯示查詢到的圖書的各項屬性。3.3.5存儲分配圖書目錄文件(Book):序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵說明1(BookID)圖書編號Int101V自動編號2(TXM)條形碼nvarchar203(Title)書名nvarchar2004(TSLX)圖書類型Nvarchar50V5(Author)作者Nvarchar20V6(Translator)譯者Nvarchar20V7(ISBN)ISBNNvarcha
16、r20USER第17頁10/5/20198(CBS)出版社Nvarchar30V10(SJMC)書架名稱Nvarchar20V11(XCL)現(xiàn)存量Smallint2V12(KCZL)庫存總量Smallint2V13(RKSJ)入庫時間DatatimeV14(CZY)操作員Nvarchar10V15(JJ)簡介Nvarchar200V16(JCCS)借出次數(shù)Smallint2V17(SFzhuxiao)是否注銷Nvarchar2V18(BookZT)圖書狀態(tài)nvarchar50V借書文件表(JSWJB):序號字段名類型長度精度小數(shù)默認允許主鍵外鍵說明位數(shù)值空1(JYID)Int101V自動借閱編
17、號編號2(BookID)Int10V圖書編號3(StuID)學 Int10V生編號4(JYSJ)借 Datatime8V閱時間5(DQSJ)至 U Datatime8V期時間6(XJCS)續(xù) Smallint2V借次數(shù)7(CZY)操作員Nvarchar10V8(ZT)狀態(tài)navarchar50V第18頁10/5/20193.4 032 學生信息查詢模塊具體格式如下:功能編號032功能名稱學生信息查詢模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-26頁碼第12頁3.4.1功能流程圖功能流程圖如下圖:需要說明的問題:錄入項檢測使用javascript
18、來實現(xiàn)(各項非空);操作權限:面向所有用戶3.4.2功能描述(8)功能類型: 查詢數(shù)據(jù)(9)功能概述:顯示查詢結果(10)前提業(yè)務:無(11)后繼業(yè)務:(12)功能約束:沒有約束;(13)約束描述:(14)操作權限: 面向所有用戶USER第19頁10/5/2019343界面設計(4) 基礎信息處理下表是動作說明:動作編號動作名稱動作描述A01確定點擊按鈕提交數(shù)據(jù)到圖 書查詢數(shù)據(jù)處理.jsp頁面A02圖書信息查詢點擊按鈕將頁面轉至圖書信息查詢.jsp頁面(5) 數(shù)據(jù)要求(3)功能類型:數(shù)據(jù)查詢(4)數(shù)據(jù)描述:頁面顯示字段見下表:字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示請輸入學號10文本框丫
19、N(6)學生信息查詢的輸出項學生學號姓名 性別生日證件號碼聯(lián)系電話登記日期有效期至已借書數(shù)USER第20頁10/5/2019344模塊內(nèi)部邏輯5,Search.jsp用于顯示界面的內(nèi)容,給用戶顯示一個查詢接口6,Index.jsp用來調(diào)度所有的頁面,它根據(jù)傳入的參數(shù)來決定包含哪一個jsp頁面來顯示內(nèi)容;在index.jsp頁面中,它根據(jù)傳入的參數(shù)來決定包含哪一個jsp頁面來顯示內(nèi)容;則可以通過”/,利用jsp:include標簽來被動態(tài)加載發(fā)送到相應頁面;7,List.jsp用來顯示查詢到的結果列表。8,View.jsp用來顯示查詢到的學生的各項屬性。注釋:學生信息查詢模塊與圖書查詢模塊屬于同
20、一類功能。實現(xiàn)可以完全類似。USER第21頁10/5/20193.4.5存儲分配學生文件:序號 字段 字段名 類型 長度 精度 小數(shù) 默認 允許 主鍵 說明USER第22頁10/5/2019位數(shù)值空1XSID學生編號Int101V自動編號2Name姓名nvarchar103Sex性別nvarchar2V4ZJH證件號碼nvarchar25V5LXDH聯(lián)系電話nvarchar40V6DJRQ登記日期datetime8V7YXQZ有效期至datetime8V8YJSS已借書數(shù)smallint2V9RuleID學生規(guī)則int10ID10ZT是否掛失nvarchar2V借書文件:序號字段名類型長度精度
21、小數(shù)位默認值 允許空主鍵外鍵說明數(shù)1借閱編Int101V自動號編號2圖書編Int10V號3學生編Int10V號4借閱時 Datatime 8V間5到期時間Datatime8VUSER第23頁10/5/20196續(xù)借次Smallint2VUSER數(shù)7操作員Nvarchar10V8狀態(tài)navarchar50V3.5021 入庫管理具體格式如下:功能編號021功能名稱入庫管理模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人完成時間2007-11-27頁碼第16頁陳新光3.5.1功能流程圖(1)執(zhí)行數(shù)據(jù)庫操作的時候要驗證權限(2)錄入項檢驗用javascript來實現(xiàn)(選項非空)3.5
22、.2功能描述(1)功能類型:添加數(shù)據(jù)(2)功能描述:增加圖書目錄文件中的圖書信息(3)前提業(yè)務:管理模塊第20頁10/5/2019USERUSER第21頁10/5/2019(4)(5)(6)(7)后繼業(yè)務:無功能約束:權限約束約束描述:無操作權限:圖書館管理人員3.5.3界面設計1,動作說明如卜表:基礎信息處理動作編號動作名稱動作描述A01保存點擊按鈕提交數(shù)據(jù)到入庫數(shù)據(jù)處理.jsp頁面A02退出點擊按鈕閉將當前頁面關2,數(shù)據(jù)描述(1)功能類型:數(shù)據(jù)增加。(2)數(shù)據(jù)描述:頁面錄入字段見下表:字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示書號30文本框丫N條形碼20文本框丫N書名200文本框丫N作
23、者20文本框丫N出版社30文本框丫N版次50文本框丫N圖書類別20文本框丫NUSER第22頁10/5/2019單價8文本框YN錄入時間默認系統(tǒng)時間,格式:年 月日只需程序記錄顯示在入庫界面錄入人默認系統(tǒng)登陸人員只需程序記錄顯示在入庫界面3,入庫數(shù)據(jù)處理內(nèi)部邏輯:圖書入庫采用表格進行多行添加:利用javaBean來編寫一個BookBean來管理圖書。在BookBean類中增加記錄的公共接口來實現(xiàn)入庫數(shù)據(jù)的添加 具體的類設計如下:Public int in sert (Hashtable hash)int intID = makelD(Book,BooklD,true);Vector vect =
24、 new Vector();vect.add(Book);vect.add(addVector(BooklD,Stri ng.valueOf(i ntlD),NUM);vect.add(addVector(Title,ds.toStri ng(Stri ng)hash.get(TITLE),CHAR);vect.add(addVector(Author,ds.toStri ng(Stri ng)hash.get(AUTHOR),CHAR);vect.add(addVector(ISBN,ds.toStri ng(Stri ng)hash.get(ISBN),CHAR);return in se
25、rtRecord(vect);該方法有一個參數(shù),是java.util.Hashtable類,在調(diào)用該方法 前,先用和hashtable的put方法將字段名和該條記錄的值存入hashtable中,然后將這個hashtable作為參數(shù)傳入insert方法中。00000000000000000000/還有其他選項,同上格式USER第23頁10/5/2019在insert方法的最后, 調(diào)用ParentBean中的insertRecord方 法,insertRecord可以根據(jù)傳入的參數(shù)自動的生成增加記錄的SQL語句并通過JDBC發(fā)送到數(shù)據(jù)庫。正對ParentBean類:主要是實現(xiàn)對數(shù)據(jù)庫的各種操作:如
26、與 數(shù)據(jù)庫的連接,對數(shù)據(jù)庫的操作。3.5.4存儲分配圖書目錄文件:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵說明1圖書編號Int101V自動編號2條形碼nvarchar203書名nvarchar2004圖書類型Nvarchar50V5作者Nvarchar20V6譯者Nvarchar20V7ISBNNvarchar208岀版社Nvarchar30V9價格Money8V10書架名稱Nvarchar20V11現(xiàn)存量Smallint2V12庫存總量Smallint2V13入庫時間Datatime8V14操作員Nvarchar10V15簡介Nvarchar200V16借岀次數(shù)Smallint2VUS
27、ER第24頁10/5/201917是否注銷Nvarchar 2V18圖書狀態(tài)nvarchar 50V入庫表:序號字段名類型長度精度小數(shù)位默認值允許空主鍵外鍵說明數(shù)1書號Nvarchar301V自動編號2條形碼Nvarchar20V3書名Nvarchar200V4作者Nvarchar20V5岀版社Nvarchar30V6版次Nvarchar50V7圖書類Nvarchar20V別8存放位Nvarchar20V置9單價Money8V10入庫數(shù)Smallint2V曰里11金額Money8V12經(jīng)手人Nvarchar10V13票號Nvarchar30V14操作員Nvarchar10V15日期Datati
28、me8V注:USER第25頁10/5/20193.6 022 學生借書模塊具體格式如下:功能編號022功能名稱學生借書模塊內(nèi)容功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-27頁碼第21頁361功能流程圖需要說明的問題:(1)在進行借書,修改數(shù)據(jù)信息時,應先查詢學生的欠款信息,如欠款超額,則利用javascript實現(xiàn)信息提示,拒絕借書, 如無超額,則接受借書。(2)為便于以后的恢復操作,此修改操作只在表中做一 個標志,并不是真正的對其修改;3.6.2功能描述(1)功能類型:修改數(shù)據(jù)和查詢數(shù)據(jù)(2)功能描述:更新學生借書文件,圖書目錄文件等中的信息;US
29、ER第26頁10/5/2019(3)前提業(yè)務:管理模塊(4)后繼業(yè)務:無(5)功能約束:權限約束(6)約束描述:(7)操作權限:圖書館管理人員3.6.3界面設計1,基礎信息處理動作說明如下:動作編號動作名稱動作描述A01重置點擊按鈕將文本框內(nèi)的所有數(shù)據(jù)清空A02提交點擊按鈕將數(shù)據(jù)提交到處理學生超額信息頁面A03取消將當前頁面關閉,并取消借閱2,數(shù)據(jù)描述(1)(2)功能類型:界面設計:修改數(shù)據(jù)和查詢數(shù)據(jù)書 藉 僭 閱 管 理重置可取消(3)數(shù)據(jù)字段描述:USER第27頁10/5/20193,圖書借閱數(shù)據(jù)處理內(nèi)部邏輯lf(strEdit.equals( 1”)lf(學生超額|學生不存在)ifSuc
30、cess=false;elself(!bb.lsValid(hash)新增操作Int in tdel=bb.addBorrow(hash);If(in tdel=null)ifSuccess=false;elseFor(int i=0;ialert( ”);alert(借閱失??! ”;alert(借閱成功! ”;%執(zhí)行的過程如下:首先要驗證學生信息是否存在和學生的欠款是否超額,也就是說學生是否可 以借書,圖書是否在館等,在 確定合法之后調(diào)用bb.addBorrow(hash)來完成借閱 流程。流程其實就是對幾個表進行增改的操作。關于addBorrow(hash)的算法:public in t
31、addBorrow(Hashtable hash)System.out.println(”批量處理新增借閱。);Stri ng sql=;int intID = makelD(JYWJB,JYID,true);Stri ng strID=Stri ng.valueOf(i ntID);Stri ng strZJH = ds.toStri ng(Stri ng)hash.get(ZJH);/證件號String strTXM = ds.toString(String)hash.get(TXM); 條形碼Stri ng strJYSJ = ds.toStri ng(Stri ng)hash.get(
32、JYSJ);/借 閱時間String strXSID = ;/學生IDString strBOOKID = ;/圖書IDStri ng strDQSJ = ;/到期時間Stri ng strXJCS = ;/續(xù)借次數(shù)根據(jù)學生證件號取的學生IDUSER第29頁10/5/2019根據(jù)學生ID取得規(guī)則ID,然后取得可以借閱天數(shù),sql=select Student.RulelD,Student.XSID,Rule.KJYSJ + from Studengt,RULE +whereStude nt.ZJH=”+strZJH+andStude nt.RulelD=Rule.RulelD ;Hashtab
33、le hashReld=(Hashtable)search On eData(sql); strXSID=ds.toStri ng(String)hashReld.get(XSID);Stri ng strKJYSJ=ds.toStri ng(Stri ng)hashReId.get(KJYSJ);/根據(jù)條形碼取得圖書IDsql=select BOOKID from Book where TXM=+strTXM+”;Hashtable hashBKID=(Hashtable)searchO neData(sql);strBOOKID = ds.toStri ng(Stri ng)hashBKI
34、D.get(BOOKID);/新增操作createStateme nt();clearBatch();sql= i nsert into JSWJB(JYID,XSID,BOOKID,JYSJ,DQSJ,ZT,XJCS)+ values(+strID+,+strXSID+,+strBOOKID+,+strJYSJ+,to_char(to_date(”+strJYSJ+,yyyy-MM-dd)+strKJYSJ+),yyyy-MM-dd)+,+strZero+,+strZero+);addBatch(sql);sql=update Book set ZT二借出where BOOKID=+strB
35、OOKID; addBatch(sql);sql=update Stude nt set YJSS=YJSS+1 where XSID=+strXSID;USER第30頁10/5/2019addBatch(sql);int result=executeBatch();closeStm();return result;而對于取消按鈕事件,由于要實現(xiàn)取消借閱,所以需要調(diào)用delBorrow(String id)來取消借閱操作;算法如下:public in t delBorrow(Stri ng id)System.out.println(”批量處理取消借閱。);Stri ng sql=; sql=
36、select BOOKID from JSWJB where JYID=+id; Hashtablehash=(Hashtable)search On eData(sql); Stri ng strBOOKID=(String)hash.get(BOOKID);createStateme nt();clearBatch();sql=update JSWJB set ZT=+strO ne+ where JYID=+id;addBatch(sql);sql=update BOOK set ZT二可借where BOOKID=+strBOOKID; addBatch(sql);int result
37、=executeBatch();closeStm();retur n result;USER第31頁10/5/2019364存儲分配借書文件:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵外鍵說明1借閱編號Int101V自動編號2圖書編號Int10V3學生編號Int10V4借閱時間Datatime8V5到期時間Datatime8V6續(xù)借次數(shù)Smallint2V7操作員Nvarchar10V8狀態(tài)navarchar50V罰款單:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵外鍵說明1借閱編號Int101V自動編號2圖書編號Int10V3學生編Int10V號USER第32頁10/5/20194應罰
38、金 Smallint 3V額5實收金額Smallint3V6狀態(tài)Nvarchar1V7備注Nvarchar200V學生文件:序號字段字段名類型長度精度小數(shù)默認允許主鍵說明位數(shù)值空1XSID學生編號Int101V自動編號2Name姓名nvarchar103Sex性別nvarchar2V4ZJH證件號碼nvarchar25V5LXDH聯(lián)系電話nvarchar40V6DJRQ登記日期datetime8V7YXQZ有效期至datetime8V8YJSS已借書數(shù)smallint2V9RuleID學生規(guī)則int10ID10ZT是否掛失nvarchar2V3.7023 學生還書具體格式如下:USER第33頁
39、10/5/2019功能編號023功能名稱學生還模塊內(nèi)容H功能流程圖所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-27頁碼第27頁3.7.1功能流程圖需要說明的問題:(1)顯示結果可直接在處理結果.jsp中利用javascript來實現(xiàn) 顯示功能!(2)處理要包含:對圖書狀態(tài)和借書文件表中信息的修改以 及學生的欠款金額的計算,并更新Publish表。3.7.2功能描述(1)功能類型: 修改數(shù)據(jù)(2)功能概述:完成學生的還書業(yè)務并計算學生的欠款信息(3)前提業(yè)務:管理模塊后繼業(yè)務: 無(5)功能約束:權限約束約束描述:(7)操作權限: 圖書館管理人員3.7.3界面設計
40、(1)基礎信息處理USER第34頁10/5/2019動作編號動作名稱動作描述A01重置點擊按鈕將文本框內(nèi)的所有數(shù)據(jù)清空A02提交點擊按鈕將數(shù)據(jù)提交到處理還書信息頁面(2) 界面描述:書務條形碼:重置攝交(3)數(shù)據(jù)描述字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示書籍條形碼號10文本框YN對于還書業(yè)務的處理,實質(zhì)上與借書業(yè)務的實現(xiàn)基本上相同,只是調(diào)用了backBorrow(hash)來實現(xiàn)還書功能;lf(strEdit.equals( 1”)In t in tdel=bb.BackBorrow(hash);If(in tdel=null)ifSuccess=false;elseFor(int i
41、=0;ialert(歸還操作失??! ”;alert(歸還操作成功! ”;%針對backBorrow(hash)算法如下:public int backBorrow(Stri ng TXM)System.out.println(”批量處理還書。);Stri ng sql=;Stri ngstrBOOKID=ds.toStri ng(Stri ng)toName(BOOK,TXM,BOOKID,TXM);Stri ng strNow = ds.getDateTime();strNow = strNow.substri ng(0,10);createStateme nt();clearBatch()
42、;sql=update JSWJB set ZT=+strOne+,DQSJ=”+strNow+ whereBOOKID=+strBOOKID+ a nd ZT=+strZero+”;System.out.pri ntln (sql1:+sql);addBatch(sql);sql=update BOOK set ZT二可借where BOOKID=+strBOOKID;System.out.pri ntln (sql2:+sql);addBatch(sql);USER第36頁10/5/2019int result=executeBatch(); closeStm();return resul
43、t;3.7.4存儲分配借書文件:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵外鍵說明1借閱編Int101V自動號編號2圖書編Int10V號3學生編Int10V號4借閱時Datatime8V間5到期時Datatime8V間6續(xù)借次Smallint2V數(shù)7操作員Nvarchar10V8狀態(tài)navarchar50V學生文件:序號字段字段名類型長度精度小數(shù)默認允許主鍵說明位數(shù)值空1XSID學生編號Int101V自動USER第37頁10/5/2019編號2Name姓名nvarchar103Sex性別nvarchar2V4ZJH證件號碼nvarchar25V5LXDH聯(lián)系電話nvarchar40V6DJ
44、RQ登記日期datetime8V7YXQZ有效期至datetime8V8YJSS已借書數(shù)smallint2V9RulelD學生規(guī)則IDint1010ZT是否掛失nvarchar2V圖書目錄文件:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵說明1圖書編號Int101V自動編號2條形碼nvarchar203書名nvarchar2004圖書類型Nvarchar50V5作者Nvarchar20V6譯者Nvarchar20V7ISBNNvarchar208岀版社Nvarchar30V9價格Money8V10書架名稱Nvarchar20V11現(xiàn)存量Smallint2V12庫存總量Smallint2V13
45、入庫時間Datatime8VUSER第38頁10/5/201914操作員Nvarchar1015簡介Nvarchar200v16借岀次數(shù)Smallint2v17是否注銷Nvarchar2v18圖書狀態(tài)nvarchar50v罰款單;序號字段名類型長度精度小數(shù)位默認值 允許空主鍵外鍵說明數(shù)1借閱編Int101v自動編號號2圖書編Int10v號3學生編Int10v號4應罰金Smallint3v額5實收金Smallint3v額6狀態(tài)Nvarchar1v7備注Nvarchar200v3.8 024 圖書注銷具體格式如下:功能編號024功能名稱圖書注銷模 內(nèi)容功能流程圖塊USER第39頁10/5/2019
46、所屬業(yè)務圖書館管理所屬項目圖書館管理系統(tǒng)編寫人陳新光完成時間2007-11-27頁碼第31頁3.8.1功能流程圖需要說明的問題:(1)顯示結果可直接在處理結果.jsp中利用javascript來實現(xiàn) 顯示功能!(2)在處理圖書注銷的時候,為了便于以后的恢復操作,此 刪除操作只在表中做一標志,并不是真正的刪除。3.8.2功能描述(1)功能描述:刪除數(shù)據(jù)(2)功能概述:注銷圖書(3)前提業(yè)務:管理模塊(4)后繼業(yè)務: 無(5)約束描述:(6)操作權限: 圖書館管理人員3.8.3界面設計(1)基礎信息處理動作說明如下:動作編號動作名稱動作描述A01重置點擊按鈕將文本框內(nèi)的USER第40頁10/5/2
47、019所有數(shù)據(jù)清空A02提交點擊按鈕將數(shù)據(jù)提交到處理還書信息頁面(2)界面描述:團 書 注 銷書藉條理碼:廠重置提交(3)數(shù)據(jù)描述:字段名稱長度錄入方式是否非空項數(shù)據(jù)檢驗默認顯示書籍條形碼號10文本框YN(4)對于圖書注銷業(yè)務的處理3.8.4存儲分配圖書目錄文件:序號字段名類型長度精度小數(shù)位數(shù)默認值允許空主鍵說明1圖書編號Int101V自動編號2條形碼nvarchar203書名nvarchar2004圖書類型Nvarchar50V5作者Nvarchar20V6譯者Nvarchar20VUSER第41頁10/5/20197ISBNNvarchar208岀版社Nvarchar30V9價格Money
48、8V10書架名稱Nvarchar20V11現(xiàn)存量Smallint2V12庫存總量Smallint2V13入庫時間Datatime8V14操作員Nvarchar10V15簡介Nvarchar200V16借岀次數(shù)Smallint2V17是否注銷Nvarchar2V18圖書狀態(tài)nvarchar50V3.9 025 基礎信息設置3.10接口設計(1)用來查詢一條數(shù)據(jù)的私有接口該方法有一個參數(shù),參數(shù)是一個字符串,表示要向數(shù)據(jù)庫發(fā)送一條SQL語句,這個SQL只是一個查詢語句,方法的返回植是一個Hashtable,在Hashtable中以鍵值對的方式表示了從數(shù)據(jù)庫中選出了 第一行記錄。用Hashtable中的get( FieldName”方法可以得到改行記 錄的某一個記錄的值。private Hashtable search On eData(Stri ng sql)Hashtable hash = new Hashtable();USER第42頁10/5/2019ResultSet rs = selectRecord(sql);Stateme nt stmt = n ull;try/取得列數(shù)和列名ResultSetMetaData rsmd = rs.getMetaData();int cols = rsmd.getColu mnCoun t();if
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 法律行業(yè)加班咨詢指南
- 收購木合同范例
- 引進人才合同范例
- 開關材料采購合同范例
- 懷集縣打井合同模板
- 施工合同范例解析書
- 房子門窗加工合同范例
- 托管股東協(xié)議合同范例
- 房外中介合同范例
- 搭售電腦配件合同范例
- 中國醫(yī)科大學2024年12月(含解析)《形勢與政策》作業(yè)考核試題
- (完整word版)英語四級單詞大全
- FMEA潛在失效模式及分析標準表格模版
- 光伏電站兩票三制管理制度
- 用EXCEL做質(zhì)量分析柱狀圖模板
- 電纜截面的計算選型及口訣PPT課件
- 石膏固定PPT課件
- 大學物理下學期知識點總結Word版
- 【報告】管道脫脂檢測報告
- 躁動患者的護理
- DB31∕T 1159-2019 電動汽車滅火和應急救援指南
評論
0/150
提交評論