2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  畢業(yè)設(shè)計說明書(論文)</p><p>  作 者: 學(xué) 號: </p><p>  系 : 計算機 </p><p>  專 業(yè): 計算機 </p><p>  題 目: 基于Java的圖書館管理系

2、統(tǒng)的設(shè)計 </p><p>  指導(dǎo)者: </p><p>  (姓 名) (專業(yè)技術(shù)職務(wù))</p><p>  評閱者: </p><p>  (姓 名) (專業(yè)技術(shù)職務(wù))&l

3、t;/p><p><b>  2012年6月6日</b></p><p>  畢業(yè)設(shè)計(論文)中文摘要</p><p>  畢業(yè)設(shè)計(論文)外文摘要</p><p><b>  目次</b></p><p><b>  1 引言1</b></p>

4、;<p>  1.1 課題背景1</p><p>  1.2 目前圖書管理系統(tǒng)存在的問題1</p><p>  1.3 課題意義2</p><p>  1.4 課題內(nèi)容2</p><p><b>  2 需求分析2</b></p><p>  2.1 可行性分析2<

5、/p><p>  2.2 功能分析3</p><p>  2.3 性能分析3</p><p>  3. 相關(guān)技術(shù)介紹4</p><p>  3.1 Swing介紹4</p><p>  3.2 C/S介紹5</p><p>  3.3 Socket介紹6</p><p

6、><b>  4 系統(tǒng)設(shè)計6</b></p><p>  4.1 模塊設(shè)計6</p><p>  4.2 數(shù)據(jù)庫設(shè)計7</p><p><b>  5 程序?qū)崿F(xiàn)10</b></p><p>  5.1客戶端與服務(wù)器端的連接10</p><p>  5.2登錄模

7、塊程序?qū)崿F(xiàn)11</p><p>  5.3 管理員功能模塊的實現(xiàn)12</p><p>  5.4 讀者功能模塊的實現(xiàn)18</p><p>  6. 軟件測試19</p><p>  6.1 軟件測試的方法與步驟19</p><p>  6.2 測試用例設(shè)計與測試用例的運行過程及測試結(jié)果分析20</p&

8、gt;<p><b>  6.3 分析21</b></p><p><b>  結(jié)論22</b></p><p><b>  參考文獻23</b></p><p><b>  致 謝24</b></p><p><b>

9、  1 引言</b></p><p><b>  1.1 課題背景</b></p><p>  在我國信息化管理系統(tǒng)近年來日趨成熟,在采用計算機技術(shù)進行管理之前,圖書的圖書借閱工作是非常繁瑣和復(fù)雜的。圖書的借閱工作完全依賴于手工操作,不但費時費力而且經(jīng)常容易出錯。讀者在借書的時候首先要有一個借閱證,工作人員把讀者要借閱的信息卡與讀者的借閱證放到一起,并且在

10、借閱證上填寫借閱信息,這就是手工操作時代的借閱過程。這樣的借閱工作顯而易見,效率非常低,因為工作量大不僅容易丟失,而且還容易出錯。總的來說,缺乏系統(tǒng)、規(guī)范的信息管理手段。利用計算機來處理這些流程無疑會極大程度地提高效率和處理能力。讀者排隊的時間會明顯縮短,讀者可以花更多的時間在選書和看書上面。而且近年來,隨著圖書館規(guī)模的逐漸擴大,圖書數(shù)量也相應(yīng)的大量增加,有關(guān)的圖書的各種信息成倍增長,總是面對大量的讀者信息、書籍信息、以及兩者相互作用而

11、產(chǎn)生的借書信息、還書信息等等面對如此龐大的信息量,需要一套合理、有效、規(guī)范的圖書館管理系統(tǒng)。對圖書資料進行統(tǒng)一、集中的管理。使用本軟件之后,工作人員可以查詢某位讀者、某種圖書的借閱情況,以及借書還書,讀者的信息增加修改等變得都非常方便和快捷,效率也提高了。</p><p>  1.2 目前圖書管理系統(tǒng)存在的問題</p><p>  1.檢索速度慢、效率低</p><p&

12、gt;  因為圖書館的藏書種類多、數(shù)量多,將藏書準確地分門別類,快速檢索,手工進行非常困難,有時會出現(xiàn)一些錯誤信息,例如館中沒有此書或已被別人借走且沒有記錄。圖書館的規(guī)模越大,這個問題越突出。</p><p>  2.借書、還書工作量大</p><p>  借書、還書頻率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、還書登記、實存圖書的更新以及借出圖書超期、遺失等的處理,其工作量之

13、大,往往是人工操作所難以勝任的。而且經(jīng)常會出現(xiàn)這樣那樣的差錯。</p><p>  3.圖書統(tǒng)計工作難、藏書更新不能及時完成。</p><p>  圖書館的圖書應(yīng)根據(jù)科學(xué)技術(shù)的發(fā)展和教學(xué)工作的需要及時添加和更新,然而由于藏書數(shù)量及圖書種類越來越多,加上自然損耗,人為破壞,使圖書的統(tǒng)計工作難以及時完成,藏書的更新也就很難有針對性地進行,藏書的知識結(jié)構(gòu)得不到良好地控制。</p>

14、<p><b>  1.3 課題意義</b></p><p>  隨著計算機的廣泛應(yīng)用,其逐步成為現(xiàn)代化的標志。圖書館的信息量也會越來越大,因此需要對讀者資源、書籍資源、借書信息、還書信息進行管理,及時了解各個環(huán)節(jié)中信息的變更,要對因此而產(chǎn)生的單據(jù)進行及時的處理,為了提高圖書館或者企業(yè)內(nèi)部對圖書存銷的自動化的管理,能夠更快速的滿足讀者的要求,提高各種工作的效率,現(xiàn)對其設(shè)計相應(yīng)的系統(tǒng)

15、,以達到上述的目的。</p><p>  圖書管理系統(tǒng)的主要功能是實現(xiàn)圖書館圖書借閱和歸還的管理的自動化。圍繞這一主要功能,本系統(tǒng)涉及到以下核心功能:借閱管理,歸還管理。除了這些核心功能外,還包括一些基本和輔助功能,它們是:用戶管理、圖書館參數(shù)、管理員管理。</p><p><b>  1.4 課題內(nèi)容</b></p><p>  1.實現(xiàn)圖書

16、館對所藏圖書的按類別、書名等多方面的查詢,最大的方便讀者和圖書館工作人員對所需圖書的查詢;</p><p>  2.建立圖書館外借讀者數(shù)據(jù)庫,方便工作人員對讀者進行有效管理;</p><p>  3.建立圖書館工作人員數(shù)據(jù)庫,限定每個工作人員對軟件操作的權(quán)限,最大限度的保護數(shù)據(jù)庫;</p><p>  4. 建立讀者數(shù)據(jù)庫,限定每個讀者對圖書借閱的操作的權(quán)限,最大限

17、度的保護數(shù)據(jù)庫;</p><p>  5.實現(xiàn)圖書館對新書入庫,舊書注銷的簡單處理,方便進貨;實現(xiàn)圖書館的有效管理。</p><p><b>  2 需求分析</b></p><p><b>  2.1 可行性分析</b></p><p>  采用現(xiàn)代化統(tǒng)一的計算機系統(tǒng),能夠有效優(yōu)化圖書館管理系統(tǒng),

18、使其高效的發(fā)揮最大作用,能夠迅捷的為讀者提供相應(yīng)的服務(wù),也同時能為管理人員減輕負擔(dān)。開發(fā)本系統(tǒng)的可行性研究如下:</p><p>  2.1.1 技術(shù)可行性</p><p>  技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完成開發(fā)工作,軟、硬件能否滿足需要。本系統(tǒng)采用java開發(fā)出友好美觀的人機界面,便于用戶理解、操作。使用Eclipse作為開發(fā)工具,使用方面規(guī)范性強。數(shù)據(jù)庫管理系統(tǒng)采用Ac

19、cess,它能夠處理大量數(shù)據(jù),同時保持數(shù)據(jù)的完整性、安全性。因此本系統(tǒng)的開發(fā)平臺已成熟可行。硬件方面,在科技飛速發(fā)展的今天,硬件更新速度越來越快,容量越來越大,可靠性越來越高,價格越來越便宜,因此硬件平臺也能夠滿足本系統(tǒng)所需[1]。</p><p>  2.1.2 經(jīng)濟可行性</p><p>  鑒于計算機技術(shù)發(fā)展異常迅猛, ,在硬件軟件配置以及開發(fā)技術(shù)均以可行的情況下開發(fā)這樣一個管理系統(tǒng)

20、成本不會很高,但其可以大大提高圖書館的工作效率,也是圖書館管理發(fā)展的必然趨勢,其必將有比較寬闊的市場, ,加上目標系統(tǒng)并不是十分復(fù)雜和開發(fā)周期較短,人員經(jīng)濟支出有限。開發(fā)完成運行后,為使用者帶來便利,為系統(tǒng)的進一步推廣創(chuàng)造了條件,經(jīng)濟收益將遠超過投資。從經(jīng)濟角度考慮,此系統(tǒng)開發(fā)可行。</p><p><b>  2.2 功能分析</b></p><p>  該系統(tǒng)主要

21、建立一個基于C/S模式的圖書管理系統(tǒng),面對當(dāng)今很多小型圖書管理仍是人工管理帶來的檢索速度慢,效率低,借閱歸還圖書量大,圖書統(tǒng)計工作量大,藏書不能完成及時更新的問題,該系統(tǒng)可以對兩個不同的用戶類型實現(xiàn)不同的功能:</p><p>  1.對于圖書館工作人員能夠方便的對圖書信息的管理,可以增加、修改、刪除圖書,豐富具體圖書的信息,對不同圖書進行分類操作;可以根據(jù)圖書證號和圖書的條形碼的進行借書和還書的操作;對讀者的信

22、息進行增加、修改、刪除,以及讀者的的信息統(tǒng)計來實現(xiàn)對讀者的管理;對管理員的一些信息進行添加、刪除和管理權(quán)限的設(shè)置來實現(xiàn)對管理員的管理;可以查詢圖書相關(guān)資料、當(dāng)前借閱情況和歷史借閱情況;以及對一些參數(shù)的</p><p><b>  管理。</b></p><p>  2.對于讀者在本系統(tǒng)的應(yīng)用下可實現(xiàn)按照各種方式(如:書名,作者,ISBN號,出版)查詢圖書館的藏書情況;

23、能夠查詢自己的借閱圖書情況,也能查詢自己的信息 (如學(xué)號、姓名、密碼、電話、地址等)和更新自己的信息以便對自己的信息進行管理。</p><p><b>  2.3 性能分析</b></p><p>  1.打開軟件后任意的瀏覽切換不同的界面(隨意操作),包括“圖形登陸界面”,“圖書查詢界面”,“借書還書界面”,“讀者管理界面”,“管理員界面”,“圖書管理界面 ”及各個

24、菜單項和按鈕均有反應(yīng)且反應(yīng)正確無誤。</p><p>  2.不可用的按鈕,全部置灰,減少用戶無謂的操作,提高可操作性。</p><p>  3.具有較高的可靠性和容錯能力,無溢出問題和數(shù)據(jù)丟失。</p><p>  4.界面設(shè)計合理。面板內(nèi)文字為當(dāng)前語言,并且語意明確。各個組件無交錯覆蓋。輸入框內(nèi)文字字數(shù)以及類型任意輸入,無越界以及提示違規(guī)現(xiàn)象。</p>

25、;<p><b>  3. 相關(guān)技術(shù)介紹</b></p><p>  3.1 Swing介紹</p><p>  Swing是一個用于開發(fā)Java應(yīng)用程序用戶界面的開發(fā)工具包。它以抽象窗口工具包(AWT)為基礎(chǔ)使跨平臺應(yīng)用程序可以使用任何可插拔的外觀風(fēng)格。Swing開發(fā)人員只用很少的代碼就可以利用Swing豐富、靈活的功能和模塊化組件來創(chuàng)建優(yōu)雅的用戶界面

26、。 工具包中所有的包都是以swing作為名稱,例如javax.swing,javax.swing.event。[2、3]</p><p>  在創(chuàng)建圖形界面時,一般要遵循以下步驟:</p><p> ?。?)導(dǎo)入Swing包。用以下語句導(dǎo)入Swing包 import javax.swing.*; 大部分Swing程序用到了AWT的基礎(chǔ)底層結(jié)構(gòu)和事件模型,因此需要導(dǎo)入兩個包: import

27、java.awt.*; import java.awt.event.*; 如果圖形界面中包括了事件處理,那么還需要導(dǎo)入事件處理包: import javax.swing.event.*;。</p><p> ?。?)選擇界面風(fēng)格 Swing允許選擇程序的圖形界面風(fēng)格常用的有java風(fēng)格,windows風(fēng)格等 下面的代碼用于選擇圖形界面風(fēng)格,這里選擇的是跨平臺的Java界面風(fēng)格[8、14]。 </p>

28、<p>  try { UIManager.setLookAndFeel( UIManager.getCrossPlatformLookAndFeelClassName( )); } catch (Exception e) { }</p><p> ?。?)設(shè)置頂層容器。圖形界面至少要有一個頂級Swing容器。頂級Swing容器為其它Swing組件在屏幕上的繪制和處理事件提供支持 常用的頂級容器: J

29、Frame(框架):表示主程序窗口; JDialog(對話框):每個JDialog對象表示一個對話框,對話框?qū)儆诙壌翱冢籎Applet(小程序)在瀏覽器內(nèi)顯示一個小程序界面。 一個框架包括邊界、菜單欄、工具欄、狀態(tài)欄,以及中間占主要部分的窗格。窗格也可以看作是一種面板,但它是框架的一個組成部分,組件不會直接放到框架上,而是放在若干個面板上,這些面板再放到窗格上,用框架對象的getContentPane()函數(shù)來獲得窗格,再調(diào)用窗格的a

30、dd()函數(shù)放置面板[9、4]。 </p><p> ?。?)設(shè)置按鈕和標簽 按鈕(JButton)是常用組件,按鈕上允許有圖標或字符串,也可以兩者兼容。標簽(JLabel)可以顯示文本、圖像或者同時顯示。標簽一般用來顯示提示信息,它不對輸入事件作出反應(yīng)[16]。</p><p> ?。?)將組件放到容器上。用add()函數(shù)來添加組件。</p><p> ?。?

31、)為組件增加邊框。用add()函數(shù)來添加。</p><p> ?。?)處理事件 。通過添加不同的監(jiān)聽器來監(jiān)聽并作出相應(yīng)的反應(yīng)[13]。</p><p> ?。?)輔助技術(shù)支持。根據(jù)自己的需求來進行選擇。</p><p><b>  3.2 C/S介紹</b></p><p>  C/S結(jié)構(gòu)軟件(即客戶機/服務(wù)器模式)分為

32、客戶機和服務(wù)器兩層,客戶機不是毫無運算能力的輸入、輸出設(shè)備,而是具有了一定的數(shù)據(jù)處理和數(shù)據(jù)存儲能力,通過把應(yīng)用軟件的計算和數(shù)據(jù)合理地分配在客戶機和服務(wù)器兩端,可以有效地降低網(wǎng)絡(luò)通信量和服務(wù)器運算量。由于服務(wù)器連接個數(shù)和數(shù)據(jù)通信量的限制,這種結(jié)構(gòu)的軟件適于在用戶數(shù)目不多的局域網(wǎng)內(nèi)使用[7]。</p><p>  簡單的C/S體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫服務(wù)程序。二者可分別稱為前臺程序與后

33、臺程序。運行數(shù)據(jù)庫服務(wù)器程序的機器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動,就隨時等待響應(yīng)客戶程序發(fā)來的請求;客戶應(yīng)用程序運行在用戶自己的電腦上,對應(yīng)于數(shù)據(jù)庫服務(wù)器,可稱為客戶電腦,當(dāng)需要對數(shù)據(jù)庫中的數(shù)據(jù)進行任何操作時,客戶程序就自動地尋找服務(wù)器程序,并向其發(fā)出請求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則作出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運行數(shù)據(jù)負荷較輕。數(shù)據(jù)的儲存管理功能較為透明。在數(shù)據(jù)庫應(yīng)用中,數(shù)據(jù)的儲存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨立

34、進行的,前臺應(yīng)用可以違反的規(guī)則,并且通常把那些不同的(不管是已知還是未知的)運行數(shù)據(jù),在服務(wù)器程序中不集中實現(xiàn),例如訪問者的權(quán)限,編號可以重復(fù)、必須有客戶才能建立定單這樣的規(guī)則。所有這些,對于工作在前臺程序上的最終用戶,是“透明”的,他們無須過問(通常也無法干涉)背后的過程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺程序不是非?!笆菪 ?,麻煩的事情都交給了服務(wù)器和網(wǎng)絡(luò)。在C/S體系的下,數(shù)據(jù)庫不能真正成為公共、專業(yè)化的倉庫

35、,它受到獨立的專</p><p>  3.3 Socket介紹</p><p>  所謂socket通常也稱作"套接字",應(yīng)用程序通常通過"套接字"向網(wǎng)絡(luò)發(fā)出請求或者應(yīng)答網(wǎng)絡(luò)請求。以J2SDK-1.3為例,Socket和ServerSocket類庫位于java .net包中。ServerSocket用于服務(wù)器端,Socket是建立網(wǎng)絡(luò)連接時使用的。在

36、連接成功時,應(yīng)用程序兩端都會產(chǎn)生一個Socket實例,操作這個實例,完成所需的會話。socket 是面向客戶/服務(wù)器模型而設(shè)計的,針對客戶和服務(wù)器程序提供不同的socket系統(tǒng)調(diào)用??蛻綦S機申請一個socket (相當(dāng)于一個想打電話的人可以在任何一臺入網(wǎng)電話上撥號呼叫),系統(tǒng)為之分配一個socket號;服務(wù)器擁有全局公認的 socket ,任何客戶都可以向它發(fā)出連接請求和信息請求(相當(dāng)于一個被呼叫的電話擁有一個呼叫方知道的電話號碼)。&

37、lt;/p><p>  根據(jù)連接啟動的方式以及本地套接字要連接的目標,套接字之間的連接過程可以分為三個步驟:服務(wù)器監(jiān)聽,客戶端請求,連接確認[6]。 </p><p>  服務(wù)器監(jiān)聽:是服務(wù)器端套接字并不定位具體的客戶端套接字,而是處于等待連接的狀態(tài),實時監(jiān)控網(wǎng)絡(luò)狀態(tài)。 </p><p>  客戶端請求:是指由客戶端的套接字提出連接請求,要連接的目標是服務(wù)器端的套接字。

38、為此,客戶端的套接字必須首先描述它要連接的服務(wù)器的套接字,指出服務(wù)器端套接字的地址和端口號,然后就向服務(wù)器端套接字提出連接請求。 </p><p>  連接確認:是指當(dāng)服務(wù)器端套接字監(jiān)聽到或者說接收到客戶端套接字的連接請求,它就響應(yīng)客戶端套接字的請求,建立一個新的線程,把服務(wù)器端套接字的描述發(fā)給客戶端,一旦客戶端確認了此描述,連接就建立好了。而服務(wù)器端套接字繼續(xù)處于監(jiān)聽狀態(tài),繼續(xù)接收其他客戶端套接字的連接請求[1

39、5]。</p><p><b>  4 系統(tǒng)設(shè)計</b></p><p><b>  4.1 模塊設(shè)計</b></p><p>  系統(tǒng)可以對兩個不同的用戶類型實現(xiàn)不同的功能。</p><p>  1.圖書館管理人員功能模塊,它包括1)館藏檢索模塊:根據(jù)圖書的書名、isbn、出版社、作者來查圖書信息

40、;再根據(jù)讀者的圖書證號來查詢讀者的借閱信息。2)借書還書模塊:根據(jù)圖書證號和圖書條形碼進行圖書借閱操作;通過圖書條形碼來進行還書操作。3)系統(tǒng)維護:圖書維護可以增加、修改、刪除圖書,豐富具體圖書的信息;讀者維護可對讀者的信息進行增加、修改、刪除,以及讀者的信息統(tǒng)計來實現(xiàn)對讀者的管理;管理</p><p>  員維護讀管理員的一些信息進行添加、刪除和管理權(quán)限的設(shè)置來實現(xiàn)對管理員的管理;參數(shù)維護圖書館管理的一些參數(shù)的

41、進行管理。</p><p>  2.讀者管理模塊,各種它包括1)書目檢索模塊可以根據(jù)書名、作者、ISBN號、出版社查詢圖書館的藏書情況。2)我的借閱模塊能夠查詢自己的借閱圖書情況,及時根據(jù)圖書信息進行還書或是續(xù)借,以免超期。3)個人信息模塊可以對自己的學(xué)號、姓名、密碼、電話、地址等進行更新以便對自己的信息進行管理。功能模塊圖如圖4.1所示。</p><p>  圖4.1 功能模塊圖<

42、;/p><p><b>  4.2 數(shù)據(jù)庫設(shè)計</b></p><p>  數(shù)據(jù)庫是整個系統(tǒng)的基石,數(shù)據(jù)庫的設(shè)計優(yōu)劣直接影響到整個系統(tǒng)的設(shè)計成敗,本節(jié)對數(shù)據(jù)庫的設(shè)計進行專門闡述。</p><p>  數(shù)據(jù)庫設(shè)計是把現(xiàn)實世界的實體模型與需求轉(zhuǎn)換成數(shù)據(jù)庫的模型的過程,它是建立數(shù)據(jù)庫應(yīng)用系統(tǒng)的核心問題。數(shù)據(jù)庫及其應(yīng)用的性能都建立在良好的數(shù)據(jù)庫設(shè)計的基礎(chǔ)之

43、上,數(shù)據(jù)庫的數(shù)據(jù)是一切操作的基礎(chǔ),如果數(shù)據(jù)庫設(shè)計不好,那么其它一切用于提高數(shù)據(jù)庫性能的方法收效都是有限的。數(shù)據(jù)庫設(shè)計的關(guān)鍵是如何使設(shè)計的數(shù)據(jù)庫能合理地存儲用戶的數(shù)據(jù),方便用戶進行數(shù)據(jù)處理[10]。</p><p>  設(shè)計數(shù)據(jù)庫必須遵循一定的規(guī)則,在關(guān)系型數(shù)據(jù)庫中,這種規(guī)則就是范式,范式是符合某一種級別的關(guān)系模式的集合。一般人們設(shè)計數(shù)據(jù)庫遵循第三范式。即:數(shù)據(jù)庫表中不包含已在其他表中包含的非主關(guān)鍵字信息。采用范式

44、減少了數(shù)據(jù)冗余,節(jié)約了存儲空間,同時加快了增、刪、改的速度[11]。</p><p>  4.2.1 圖書信息表結(jié)構(gòu)設(shè)計</p><p>  圖書信息表主要用于存儲圖書館中所藏圖書的相關(guān)信息,其中的相關(guān)信息是在圖書入庫時由操作員進行添加完善,此表主要用于讀者和圖書管理員對館中圖書的查詢,系統(tǒng)用戶根據(jù)圖書的某個屬性進行查詢,便可得知圖書的其他相關(guān)信息,其中圖書所在書架屬性是便于讀者借閱時對圖

45、書的尋找,圖書價格是在讀者不慎將圖書遺失時對遺失圖書進行賠償?shù)囊罁?jù)。表的具體結(jié)果如表4.1所示。</p><p>  表4.1 圖書信息表bookdata</p><p>  4.2.2 圖書管理參數(shù)信息表結(jié)構(gòu)設(shè)計</p><p>  該表的設(shè)計主要是方便對圖書管理參數(shù)的管理,和對圖書的查詢,在實際應(yīng)用中圖書管理員就是根據(jù)圖書類型的不同將之分列在不同的書架,以方便

46、讀者的借閱尋找,其中可借閱天數(shù)項設(shè)置了不同類型圖書的借閱期限,可根據(jù)圖書的具體情況進行不同的維護管理,表的具體結(jié)構(gòu)設(shè)計如表4.2所示。</p><p>  表4.2 圖書管理參數(shù)信息表parameter</p><p>  4.2.3 讀者信息表結(jié)構(gòu)設(shè)計</p><p>  讀者信息表的設(shè)計是為了圖書館管理員對讀者進行管理,其中讀者ID,不同類型證件的號碼都是唯一

47、的,是讀者在借閱圖書時需要輸入對讀者身份進行識別的信息,讀者電話等信息是為了與讀者進行聯(lián)系,讀者類型信息決定了讀者一次性可借閱的圖書的數(shù)量,注冊時間可用于查詢計算讀者身份有效的期限,操作員是為了便于對信息才操作的查詢。表的具體結(jié)構(gòu)設(shè)計如圖4.3所示。</p><p>  表4.3 讀者信息表reader</p><p>  4.2.4 管理員類型信息表結(jié)構(gòu)設(shè)計</p>&l

48、t;p>  此表的設(shè)計是為了對不同身份的讀者進行分類方便讀者的管理,其中可借閱圖書數(shù)量的屬性設(shè)定,是根據(jù)讀者需求的不同對起權(quán)限進行的設(shè)置,用于規(guī)定不同類型讀者一次可借閱的圖書數(shù)量,表的具體結(jié)構(gòu)設(shè)計如圖4.4所示。</p><p>  表4.4 管理員信息表librarian</p><p>  4.2.5 圖書借閱信息表結(jié)構(gòu)設(shè)計</p><p>  該表的

49、設(shè)計是用于對讀者借閱圖書進行管理,表中圖書條碼屬性是對借閱圖書的唯一性識別標識,讀者ID號記錄借閱的相應(yīng)讀者,借書時間記錄了相應(yīng)的歸還時間,以及歸還時是否超時,以及超期天數(shù) ,根據(jù)讀者的類型以及天數(shù)進行罰款,是否歸還標識可查詢讀書是否被歸還,表的具體結(jié)構(gòu)設(shè)計如圖4.5所示。</p><p>  表 4.5 圖書借閱信息表 lendinfo</p><p>  4.2.6 圖書現(xiàn)在信息表

50、結(jié)構(gòu)設(shè)計</p><p>  與圖書借閱信息表形成對照的是圖書歸還信息表,該表的設(shè)計除了像上表一樣把借閱的圖書與相應(yīng)的借閱者進行對應(yīng)的聯(lián)系以外還記錄了讀者應(yīng)歸還圖書的時間,以此判斷讀者的借閱是否超時,表的具體結(jié)構(gòu)設(shè)計如圖4.6所示。</p><p>  表 4.6 圖書現(xiàn)在信息表bookinfo</p><p><b>  5 程序?qū)崿F(xiàn)</b>

51、;</p><p>  5.1客戶端與服務(wù)器端的連接</p><p><b>  1. 客戶端</b></p><p>  在客戶端設(shè)置socket來獲得服務(wù)器端的用戶名和端口號以便和服務(wù)器進行連接。</p><p>  public class LibClient implements LibProtocals {&l

52、t;/p><p>  protected Socket hostSocket;</p><p>  protected ObjectOutputStream outputToServer;</p><p>  protected ObjectInputStream inputFromServer;</p><p>  public LibClie

53、nt(String host, int port) throws IOException {</p><p>  hostSocket = new Socket(host, port);</p><p>  outputToServer = new ObjectOutputStream(hostSocket.getOutputStream());</p><p> 

54、 inputFromServer = new ObjectInputStream(hostSocket.getInputStream());</p><p>  log("連接成功.");}</p><p><b>  2. 服務(wù)器端</b></p><p>  服務(wù)器端驗證客戶端發(fā)來的用戶名和端口號,如果符合就接受客戶端的

55、請求,進行連接,然后啟動服務(wù)器隨時和客戶端進行通信。</p><p>  public class LibServer implements LibProtocals {</p><p>  protected ServerSocket serverSocket;</p><p>  protected LibDataAccessor libDataAccessor

56、;protected boolean done;</p><p>  protected Socket clientSocket = null;protected LibOpHandler libOpHandler = null;</p><p>  public LibServer(int thePort) {</p><p>  done = false;<

57、;/p><p>  serverSocket = new ServerSocket(thePort);</p><p>  libDataAccessor = new LibDataAccessor();</p><p>  while (!done) {</p><p><b>  try {</b></p>

58、<p>  clientSocket = serverSocket.accept();</p><p>  String clientHostName = clientSocket.getInetAddress().getHostName();</p><p>  libOpHandler = new LibOpHandler(clientSocket, libDataAcce

59、ssor);</p><p>  libOpHandler.start();</p><p>  } catch (IOException e2) {</p><p><b>  log(e2)}}</b></p><p>  public static void main(String[] args) {</p&

60、gt;<p>  LibServer theLibServer;int port = 6666; // 設(shè)置默認啟動端口號</p><p>  if (args.length == 1) {</p><p>  port = Integer.parseInt(args[0]);}</p><p>  theLibServer = new LibServ

61、er(port);</p><p><b>  }}</b></p><p>  5.2登錄模塊程序?qū)崿F(xiàn)</p><p>  本模塊主要是用戶通過圖書管理系統(tǒng)的首頁登錄進入該系統(tǒng)。用戶輸入正確的用戶名和密碼,系統(tǒng)會根據(jù)用戶的身份進行相應(yīng)權(quán)限劃分;如果登錄信息有錯誤,則系統(tǒng)提示登錄錯誤的信息,并且禁止系統(tǒng)用戶進行任何操作。圖書管理系統(tǒng)的登錄主頁面

62、如圖5.1所示。</p><p>  圖5.1 系統(tǒng)登錄頁面圖 圖5.2 用戶登錄流程圖</p><p>  用戶在登錄頁面寫好用戶名和密碼,選擇登錄,登錄成功則跳轉(zhuǎn)到系統(tǒng)的首頁,否則提示錯誤信息。在服務(wù)器端進行用戶身份驗證的程序流程圖如圖5.2程序流程圖所示</p><p><b>  代碼如下:

63、</b></p><p>  String userid = tf1.getText();</p><p>  String password = new String(tf2.getPassword());</p><p>  adminForm.setUserid(userid);adminForm.setPasswd(password);</

64、p><p>  readerForm.setReaderid(userid);readerForm.setPasswd(password);</p><p>  if ((lib.adminLogin(adminForm) || lib.readerLogin(readerForm))</p><p>  {dispose();</p><p>

65、  MainFrame myFrame = new MainFrame(userid, password, flag);</p><p>  myFrame.setVisible(true);System.out.println("ok");</p><p><b>  } else {</b></p><p>  Syst

66、em.out.println("error");</p><p>  JOptionPane.showMessageDialog(null, "錯誤的用戶名或密碼!", "警告",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }<

67、;/b></p><p>  5.3 管理員功能模塊的實現(xiàn)</p><p>  本模塊中最主要的是館藏檢索模塊、借書還書模塊、系統(tǒng)維護模塊。</p><p>  5.3.1 館藏檢索模塊的實現(xiàn)</p><p>  館藏檢索模塊主要是書目檢索和讀者借閱信息的查詢。書目檢索是根據(jù)圖書的書 名、isbn、出版社、作者來查詢圖書信息,主要針

68、對的表是圖書信息表bookdata;而讀者借閱信息的查詢則是跟據(jù)讀者的圖書證號來查詢讀者的借閱信息。主要用到的是圖書 借閱信息表lendinfo,書目檢索界面如圖5.3所示,讀者借閱信息查詢效果如圖5.4所示。</p><p>  圖5.3 書目檢索界面圖</p><p>  圖5.4 讀者借閱信息查詢圖</p><p>  5.3.2借書還書模塊的實

69、現(xiàn) </p><p>  1.圖書借閱子模塊實現(xiàn)系統(tǒng)的借閱功能,讀者向圖書管理員提供自己的圖書證號和要借閱的圖書條形碼,并且還要根據(jù)借閱者的身份來規(guī)定最多借閱的數(shù)量,還要將被借出的圖書的狀態(tài)設(shè)置為0,以免下個人再借。如果借閱成功則彈出借書成功的對話框,以方便管理員的管理。圖書管理員將讀者的借閱信息記錄在圖書借閱表lendinfo中。以保證數(shù)據(jù)庫的信息和借閱操作保持一致。借閱圖書的界面如圖5.5所示。</p&

70、gt;<p>  圖5.5 借閱圖書的操作界面</p><p><b>  代碼如下:</b></p><p>  if (judge.judgeBookBorrow(book) && judge.judgeReaderBorrow(book)</p><p>  && judge.judgeBo

71、okYesOrNot(book) && judge.endDate(book) == true) {</p><p>  if (judge.readerType(readerForm) == 1</p><p>  && judge.bookCount(readerForm) >=judge.bookMaxNumber(readerForm)) {&

72、lt;/p><p>  JOptionPane.showMessageDialog(null, "大學(xué)生最多只能借"+judge.bookMaxNumber(readerForm)+"本!", "警告",JOptionPane.WARNING_MESSAGE);</p><p>  }//下面用同樣的方法來判斷老師和研究生最多可借閱的

73、圖書數(shù)量,故省略了</p><p>  if (i == JOptionPane.YES_OPTION) {</p><p>  LibDataAccessor b = new LibDataAccessor();</p><p>  b.borrowBookInfo(book,judge.dayMaxNumber(readerForm));// 將被借圖書可借狀態(tài)

74、置0</p><p>  int n = b.readerBorrowBook(book,judge.dayMaxNumber(readerForm));</p><p>  if (n > 0) {</p><p>  int j = JOptionPane.showConfirmDialog(null,"借書成功!再借一本?", &qu

75、ot;借書成功",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p>  if (j == JOptionPane.YES_OPTION) {</p><p>  bookFieldText.setText("");</p><p><b>  } else

76、 {</b></p><p>  dispose();}</p><p>  2.圖書歸還子模塊實現(xiàn)系統(tǒng)的圖書歸還功能,讀者向圖書管理員提供自要歸還的圖書條形碼,圖書管理員將信息記錄在系統(tǒng)中,歸還成功,其操作界面如圖5.6所示。</p><p>  圖5.6 圖書歸還界面</p><p><b>  代碼如下:<

77、/b></p><p>  先判斷圖書館是否有此書judgeBookBorrow(),再判斷此書是否被借出。judgeBookYesOrNot()。并且查看是否續(xù)借,還要看是否超期,如果超期就要進行罰款</p><p>  if (b.judgeBookBorrow(book) && b.judgeBookYesOrNot(book) == false) {</

78、p><p>  int overduedays = b.overDueDays(book);// 得到超期天數(shù)。</p><p>  int renew = b.renew(book);// 查看是否續(xù)借。0:未續(xù)借,1:續(xù)借。</p><p>  float money1 = b.moneyUpdate(book,moneyNumber);// 如果超期且沒有續(xù)借,得

79、到罰款數(shù)額。</p><p>  String money = b.numberFormatter(money1);</p><p>  int i = JOptionPane.showConfirmDialog(null, "確認還圖書嗎?", "確認",</p><p>  JOptionPane.YES_NO_OPTIO

80、N);</p><p>  if (i == JOptionPane.YES_OPTION) {</p><p>  if (overduedays < 0) {</p><p>  b.returnBookInfo(book); b.returnBookLendInfo(book); int j = JOptionPane.showConfirmDialog

81、(null, "還書成功!繼續(xù)還書?","還書成功", JOptionPane.WARNING_MESSAGE);</p><p>  if (j == JOptionPane.YES_OPTION) {</p><p>  bookFieldText.setText("");} else {</p><p&g

82、t;  dispose();}}</p><p>  正好到期。看圖書是否要續(xù)借,如要續(xù)借則修改還書日期將bookinfo中書的狀態(tài)碼status的值設(shè)為1,使之可借。將lendinfo表中的實際還書日期字段returndate的值設(shè)為還書的日期。</p><p>  else if (overduedays == 0) {</p><p>  System.out

83、.println("圖書到期,需要續(xù)借。");</p><p>  int a = JOptionPane.showConfirmDialog(null, "圖書到期,續(xù)借10天?","圖書到期", JOptionPane.WARNING_MESSAGE);</p><p>  if (a == JOptionPane.YES_O

84、PTION) {</p><p>  boolean flag = b.renewBook(book);// 續(xù)借圖書。</p><p>  b.returnBookInfo(book);b.returnBookLendInfo(book); if (m == JOptionPane.YES_OPTION) {</p><p>  bookFieldText.set

85、Text("");</p><p>  } else {dispose();}</p><p>  //超期續(xù)借和超期沒續(xù)借的情況就不一一說明了。</p><p>  5.3.3 系統(tǒng)維護模塊的實現(xiàn)</p><p>  1.管理員管理模塊是實現(xiàn)管理員的添加、刪除和更新,首先定義了一個AdminForm()類用get()方法

86、和set()方法來設(shè)置管理員的一些信息,用類AdminAll()來設(shè)置管理員模塊的界面,在管理員添加時還可以設(shè)置管理員的權(quán)限并將這些操作保存在管理員信息表librarian中,根據(jù)用戶名來進行刪除和更新。管理員添加界面如圖5.7所示,管理員刪除更新界面如圖5.8所示。</p><p>  圖5.7 管理員添加界面</p><p>  圖5.8 管理員刪除更新界面</p>

87、<p>  2.讀者維護功能模塊的實現(xiàn)</p><p>  讀者維護實現(xiàn)對信息的管理功能,讀者信息管理則主要管理維護讀者的基本信息,主要是添加,刪除,修改等。主要用ReaderAddPanel()類,ReaderDelPanel()類, ReaderUpdPanel()類, ReaderRetrievalPanel()類來進行讀者的信息管理,同時來修改讀者信息表reader。讀者增加界面如圖5.9所示。

88、</p><p>  圖5.9 讀者增加界面</p><p>  3.圖書維護功能模塊的實現(xiàn)主要是對圖書的isbn號、書名、作者等一些信息的增加刪除和更新,并將這些信息添加到數(shù)據(jù)庫圖書信息表bookdata中。圖書添加界面如圖5.10所示,圖書刪除界面如圖5.11所示。</p><p>  圖5.10 圖書添加界面</p><p>  圖

89、5.11 圖書刪除界面</p><p>  4.參數(shù)維護功能模塊</p><p>  用ParaDialogPanel()類來,根據(jù)讀者類別來設(shè)置讀者可以最多借閱圖書的數(shù)量和天數(shù),以及每日的罰金數(shù),并且設(shè)置不同的監(jiān)聽器來監(jiān)聽各個事件的發(fā)生,以便做出相應(yīng)的反應(yīng)。界面如圖5.12所示。</p><p>  圖5.12 參數(shù)維護界面</p><p&

90、gt;  5.4 讀者功能模塊的實現(xiàn)</p><p>  5.4.1 書目檢索</p><p>  書目檢索是根據(jù)圖書的書名、isbn、出版社、作者來查詢圖書信息,通過BookRetrievalpanel()類來實現(xiàn),主要針對的表是圖書信息表bookdata。書目檢索界面如圖5.13所示。</p><p>  圖5.13 書目檢索界面</p><

91、;p>  5.4.2 我的借閱模塊 </p><p>  主要用MyBorrowPanel()類來實現(xiàn)借閱信息的查詢,先連接服務(wù)器的socket,得到服務(wù)器端傳來的讀者的借閱信息,然后用JTablel來把借閱信息顯示在表格里。我的借閱信息界面如圖5.14所示。</p><p>  圖5.14 我的借閱信息界面</p><p>  代碼如下;public

92、MyBorrowPanel(MainFrame parentFrame, String readerID) {</p><p>  numberFormatter.setMaximumFractionDigits(1);</p><p>  this.parentFrame = parentFrame;</p><p>  this.readerID = reade

93、rID;</p><p>  this.setLayout(new BorderLayout());</p><p>  getBorrowInfo();// 獲取借閱信息</p><p>  buildGUI();// 建立主界面</p><p><b>  }</b></p><p>  pr

94、otected void getBorrowInfo() {// 連接服務(wù)器,取得讀者的借閱信息</p><p><b>  try {</b></p><p>  ServerInfo serverInfo = new ServerInfo();</p><p>  libClient = new LibClient(serverInfo.g

95、etHost(), serverInfo</p><p>  .getPort());</p><p>  borrowInfoList = libClient.getReaderBorrowInfo(readerID);</p><p>  } catch (IOException e) {</p><p>  e.printStackTr

96、ace();</p><p><b>  }}</b></p><p>  5.4.3 個人信息</p><p>  主要是更該自己的一些信息如密碼、電話、地址等主要修改的表是讀者信息表reader。個人信息界面如圖5.15所示。</p><p>  圖5.15 個人信息界面</p><p>

97、<b>  6. 軟件測試</b></p><p>  6.1 軟件測試的方法與步驟</p><p>  在開發(fā)軟件系統(tǒng)的過程中,需要面對錯綜復(fù)雜的問題,因此,在軟件生存周期的每個階段都不可避免地會產(chǎn)生錯誤。測試目的在于:發(fā)現(xiàn)錯誤而執(zhí)行一個程序的過程,測試重要發(fā)現(xiàn)一個發(fā)現(xiàn)其中尚未發(fā)現(xiàn)的錯誤[12]。</p><p>  為了設(shè)計出有效地測試方案

98、按照下面準則進行測試:所有測試都應(yīng)追溯到用戶需求;在完成了需求模型就要著手制定測試計劃,在編碼之前最所有測試工作進行計劃和設(shè)計;運用Pareto原理著重對占出現(xiàn)錯誤80%的容易出錯的20%的模塊進行測試,從小規(guī)模開始逐步進行大規(guī)模測試,通常先重點測試單個程序模塊再轉(zhuǎn)向集成的模塊簇;精心設(shè)計測試方案,盡可能充分覆蓋程序邏輯使之達到要求的可靠性。</p><p>  按照軟件工程的觀點,軟件測試(主要是指多模塊程序的

99、測試)共包括4個層次。</p><p>  1)單元測試。單元測試的用例從單元詳細設(shè)計中導(dǎo)出。在單元測試中可以采用功能性測試和結(jié)構(gòu)性測試兩種。</p><p>  2)集成測試和確認測試。這一階段的任務(wù),是通過了單元測試的模塊逐步組裝起來,通過測試與糾錯,最終得到一個滿足需求的目標軟件。</p><p>  3)驗證測試。在這個測試步驟中所發(fā)現(xiàn)的往往是需求規(guī)格說明的

100、錯誤。一般來說,系統(tǒng)測試是功能性測試,不是結(jié)構(gòu)性測試。</p><p>  6.2 測試用例設(shè)計與測試用例的運行過程及測試結(jié)果分析</p><p>  6.2.1 模塊測試</p><p>  選取了借閱模塊進行測試</p><p>  表6.1 借閱模塊用例測試</p><p>  當(dāng)輸入的圖書證號和圖書條形碼是錯

101、誤的時,系統(tǒng)會跳轉(zhuǎn)到出錯頁面,用戶點擊確定,系統(tǒng)會重新返回登陸頁面,其中錯誤信息提示頁面如圖6.1所示:</p><p>  圖6.1 系統(tǒng)出錯提示頁面 </p><p>  6.2.2 集成測試</p><p>  把經(jīng)過單元測試的模塊放在一起形成一個子系統(tǒng)并對它進行測試用于檢驗?zāi)K相互間的協(xié)調(diào)和通信,這里主要對圖書管理員功能系統(tǒng)進行了測試,經(jīng)過檢驗其功能均得以順

102、利實現(xiàn),下圖為管理員操作的讀者借閱情況的成功運行界面。</p><p>  圖6.2 圖書借閱信息查詢功能測試圖</p><p>  把經(jīng)過測試的子系統(tǒng)裝配成一個完整的系統(tǒng)進行測試,經(jīng)過黑盒測試于白盒測試相結(jié)合的方式,對整個系統(tǒng)的各個功能模塊進行了測試,并調(diào)試改正其中的設(shè)計和編碼錯誤,經(jīng)過這個環(huán)節(jié)的操作整個系統(tǒng)的功能基本實現(xiàn)成功運行。</p><p>  6.2.

103、3 驗收測試</p><p>  在進行了以上的測試工作后,將整個軟件系統(tǒng)作為單一的實體進行測試,測試內(nèi)容與系統(tǒng)測試基本類似,但它是在用戶積極參與下進行的,此測試過程主要使用實際數(shù)據(jù),進行測試,驗證測試的目的是驗證系統(tǒng)確實能夠滿足用戶的需求,經(jīng)過這個環(huán)節(jié)的實際數(shù)據(jù)測試,系統(tǒng)的各個功能實現(xiàn)都達到了系統(tǒng)需求設(shè)計的要求[7]。</p><p><b>  6.3 分析</b>

104、;</p><p>  測試過程嚴格按照測試的流程,經(jīng)過單元測試、子系統(tǒng)測試和系統(tǒng)測試。通過單元測試,查找出了系統(tǒng)各模塊內(nèi)部的錯誤;通過子系統(tǒng)測試,發(fā)現(xiàn)了模塊間相互協(xié)調(diào)和通信上的錯誤;通過系統(tǒng)的集成測試,發(fā)現(xiàn)了軟件設(shè)計過程中存在的錯誤。通過改正錯誤的設(shè)計和實現(xiàn)部分,保證了圖書管理系統(tǒng)可以完成需求分析中制定的需求。</p><p>  通過以上測試步驟對每個功能模塊進行了測試,并進行了系統(tǒng)聯(lián)

105、調(diào),系統(tǒng)的功能較為穩(wěn)定:</p><p>  1、打開軟件后任意的切換不同的界面(隨意操作),均有反應(yīng)且反應(yīng)正確無誤。</p><p>  2、具有較高的可靠性和容錯能力。</p><p>  3、界面設(shè)計合理。面板內(nèi)文字為當(dāng)前語言,并且語意明確。各個組件無交錯覆蓋。輸入框內(nèi)文字字數(shù)以及類型任意輸入,無越界以及提示違規(guī)現(xiàn)象。</p><p>

106、  最終圖書管理的功能實現(xiàn)能符合預(yù)期的設(shè)計目標。</p><p><b>  結(jié) 論</b></p><p>  圖書管理系統(tǒng)采用的是Java語言編寫的,運用其中的Swing包來創(chuàng)建和管理圖形界面,并且運用Socket套接字來進行客戶端和服務(wù)器的連接,運用Eclipse作為開發(fā)平臺,它具有完備的編碼、調(diào)試、測試和發(fā)布功能,本系統(tǒng)采用的是Access數(shù)據(jù)庫,完成了圖書管

107、理系統(tǒng)的基本功能的實現(xiàn)。系統(tǒng)中有服務(wù)器端和客戶端兩個程序。服務(wù)器端程序負責(zé)開啟數(shù)據(jù)庫,建立與客戶端的連接,客戶端程序可以實現(xiàn)讀者用戶和管理員用戶的登錄及內(nèi)部操作。讀者用戶可以進行圖書的查詢、借閱信息的查詢及個人信息的修改的操作。管理員用戶可以進行圖書的查詢、借書還書、圖書及管理員的添加和刪除、系統(tǒng)參數(shù)的維護等操作。通過不斷地修改完善,使得軟件的功能更強大,性能更穩(wěn)定,界面更加美觀,使用起來更方便。</p><p>

108、;  當(dāng)然系統(tǒng)還是有一些不足之處的,由于時間關(guān)系,沒有使界面和功能更加合理與完美;代碼還有一些不合理之處,時間效率,空間效率還有很多提高的空間。</p><p><b>  參考文獻</b></p><p>  1 王立福. 軟件工程(第二版). 北京:北京大學(xué)出版社.2009:20~30.</p><p>  2 昊斯特曼 (Horstman

109、n Gay S.)、Gary Cornell、葉乃文、 鄺勁筠. Java核心技術(shù):基礎(chǔ)知識(第八版). 機械工業(yè)出版社,2008:100~110.</p><p>  3 俞琰、 鄭阿奇.J2EE應(yīng)用實踐教程. 電子工業(yè)出版社.2009:40~45. </p><p>  4 趙真. Eclipse開發(fā)技術(shù)詳解. 化學(xué)工業(yè)出版社,2010:22~60.</p><p&

110、gt;  5 仵博、池瑞楠、 張麗涓. Java高級編程實用教程. 清華大學(xué)出版社,2008:43~89.</p><p>  6 蔡建平. 軟件綜合開發(fā)案例教程:Linux、GCC、MySQL、Socket、Gtk+與開源案例. 清華大學(xué)出版社.2008:23~29.</p><p>  7 C/S模式. http://baike.baidu.com/view/292856.htm. &

111、lt;/p><p>  8 克萊伯格(Eric Clayberg)、魯貝(Dan Rubel)、陳沛. Eclipse插件開發(fā)(原書第3版). 機械工業(yè)出版社,2010:70~80.</p><p>  9 Barry Feigenbaum. SWT、Swing 或 AWT:哪個更適合您.http://www.ibm.com/ developerworks/cn/opensource/os-s

112、wingswt/#N10055.html</p><p>  10 陳桂林. Access數(shù)據(jù)庫程序設(shè)計(第2版). 中國水利水電出版社,2010:90~98.</p><p>  11 戚曉明、姚保峰、周會平. Access數(shù)據(jù)庫程序設(shè)計. 清華大學(xué)出版社,2012:12~30.</p><p>  12 趙斌. 軟件測試技術(shù)經(jīng)典教程(第2版). 科學(xué)出版社,20

113、11:10.</p><p>  13 陳天河. Eclipse,Struts,Hibernate,Spring集成開發(fā)寶典. 電子工業(yè)出版社,2008</p><p>  14 孫瀏. Java寶典. 電子工業(yè)出版社.2009:12~60.</p><p>  15 Java socket. http://wenku.baidu.com/view/b7ef3b19

114、227916888486d732.html.</p><p>  16 awt與swing的討論. http://wenku.baidu.com/view/ 366d88f8700abb68a982fb71.html.</p><p><b>  致 謝</b></p><p>  能順利完成這次畢業(yè)設(shè)計,要感謝很多人對我的幫助。首先是我的導(dǎo)

115、師,她一直在關(guān)心我的進度,使我可以跟上任務(wù)書所要求的步調(diào),并且對我進行了無私的指導(dǎo)和幫助,不厭其煩的幫助我進行論文的修改和改進,并且能讓我及時得到學(xué)校的通知,保持與學(xué)校的聯(lián)系。另外,在校圖書館查找資料的時候,圖書館的老師也給我提供了很多方面的支持與幫助。再就是我的老師,謝謝他對我長期以來的諄諄教導(dǎo),教授我編程的知識和技巧,指出我作品的不足之處,不斷提出更高的要求,使我可以不斷突破自己,不斷提高作品的質(zhì)量。還有我宿舍的同學(xué),遇到不懂的小問

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論