圖書(shū)館管理系統(tǒng)畢業(yè)設(shè)計(jì)論文_第1頁(yè)
已閱讀1頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  畢業(yè)設(shè)計(jì)(論文)</b></p><p>  題目: 圖書(shū)館管理系統(tǒng) </p><p>  姓 名 </p><p>  學(xué) 號(hào) </p><p>  專(zhuān) 業(yè)

2、 計(jì)算機(jī)網(wǎng)絡(luò) </p><p>  指導(dǎo)教師 </p><p><b>  2012年4月</b></p><p><b>  目錄</b></p><p><b>  摘要III</b></p><

3、;p><b>  前言IV</b></p><p>  第一章 圖書(shū)館管理系統(tǒng)分析1</p><p>  1.1 需求分析1</p><p>  1.2 功能分析2</p><p>  1.3 系統(tǒng)用例圖設(shè)計(jì)2</p><p>  1.4 繪制系統(tǒng)流程圖3</p>

4、<p>  1.5 系統(tǒng)的開(kāi)發(fā)環(huán)境4</p><p>  第二章 數(shù)據(jù)庫(kù)分析與設(shè)計(jì)5</p><p>  2.1 數(shù)據(jù)庫(kù)分析5</p><p>  2.2 數(shù)據(jù)庫(kù)概念設(shè)計(jì)5</p><p>  2.3 數(shù)據(jù)邏輯結(jié)構(gòu)設(shè)計(jì)7</p><p>  2.4 各表之間的聯(lián)系圖9</p><

5、;p>  第三章 系統(tǒng)設(shè)計(jì)與功能實(shí)現(xiàn)10</p><p>  3.1 數(shù)據(jù)庫(kù)Dao類(lèi)的構(gòu)建10</p><p>  3.2 系統(tǒng)登錄模塊11</p><p>  3.3 主窗體模塊13</p><p>  3.4 圖書(shū)類(lèi)別管理模塊15</p><p>  3.5 圖書(shū)信息管理模塊17</p>

6、;<p>  3.6 讀者信息管理模塊21</p><p>  3.7 圖書(shū)訂購(gòu)管理模塊24</p><p>  3.8 圖書(shū)借閱管理模塊27</p><p>  3.9 系統(tǒng)維護(hù)模塊30</p><p>  第四章 系統(tǒng)測(cè)試35</p><p>  4.1 測(cè)試項(xiàng)目35</p>

7、<p>  4.2 測(cè)試用例35</p><p><b>  結(jié)束語(yǔ)37</b></p><p><b>  參考文獻(xiàn)38</b></p><p><b>  圖書(shū)館管理系統(tǒng)</b></p><p><b>  摘要</b></p&

8、gt;<p>  圖書(shū)館管理系統(tǒng)是采用Java做前臺(tái),后臺(tái)數(shù)據(jù)庫(kù)則采用的是SQL Server 2005,本系統(tǒng)提供6個(gè)功能模塊,分別是圖書(shū)類(lèi)別管理模塊、圖書(shū)信息管理模塊、讀者信息管理模塊、新書(shū)訂購(gòu)管理模塊、圖書(shū)借閱模塊,以及系統(tǒng)維護(hù)模塊。這6個(gè)模塊里又有許多子模塊,通過(guò)這些模塊之間的相互連接與配合,完成操作員發(fā)出的各種指令。</p><p>  圖書(shū)館管理系統(tǒng)是一個(gè)供內(nèi)部人員使用的系統(tǒng)。而圖書(shū)館的

9、工作人員也分為兩類(lèi),一類(lèi)是操作人員,主要負(fù)責(zé)圖書(shū)的借閱和歸還的工作;一類(lèi)是管理員,除了操作人員的所有功能外,還能夠?qū)?shū)籍列表、書(shū)籍信息、讀者信息等進(jìn)行管理。</p><p>  論文將全面介紹所設(shè)計(jì)的圖書(shū)館管理系統(tǒng)的系統(tǒng)功能和業(yè)務(wù)流程,并對(duì)系統(tǒng)進(jìn)行詳細(xì)的數(shù)據(jù)分析和設(shè)計(jì),最終使用Java完成系統(tǒng)開(kāi)發(fā)。</p><p>  關(guān)鍵詞:圖書(shū)館管理系統(tǒng),SQL Server 2005,Java<

10、;/p><p><b>  前言</b></p><p>  隨著社會(huì)的發(fā)展,人們對(duì)于知識(shí)的需求也在不斷地增長(zhǎng)。書(shū)籍作為人們獲取并增長(zhǎng)知識(shí)的主要途徑,使得圖書(shū)館在人們生活中占有了一定位置。但是近幾年來(lái),隨著書(shū)量的不斷增長(zhǎng),造成了書(shū)庫(kù)空間極度不足,圖書(shū)擠壓,管理不善。這些都直接影響了讀者對(duì)圖書(shū)館藏書(shū)的充分利用。這時(shí)圖書(shū)館就特別需要開(kāi)發(fā)一套圖書(shū)館管理系統(tǒng),通過(guò)該系統(tǒng)來(lái)提高圖書(shū)

11、館的管理效率,從而減少管理方面的工作流和成本。</p><p>  一個(gè)現(xiàn)代化的圖書(shū)館在正常運(yùn)營(yíng)中總是面對(duì)大量的讀者信息,書(shū)籍信息以及兩者相互作用產(chǎn)生的借書(shū)信息,還書(shū)信息。面對(duì)圖書(shū)館數(shù)以萬(wàn)計(jì)的圖書(shū),紛繁復(fù)雜的讀者信息,頻繁更替的借還書(shū)信息,傳統(tǒng)的直接方法不但管理出現(xiàn)漏洞,造成損失。因此有一個(gè)智能化、系統(tǒng)化、信息化的圖書(shū)管理系統(tǒng)十分重要的。充分利用計(jì)算機(jī)的功能實(shí)現(xiàn)對(duì)讀者管理、書(shū)籍管理,借閱管理等自動(dòng)化控制,將會(huì)使圖

12、書(shū)館的工作大大減弱。方便友好的圖形界面、簡(jiǎn)便的操作、完善的數(shù)據(jù)庫(kù)管理。將會(huì)使得圖書(shū)館系統(tǒng)極大限度的應(yīng)用于現(xiàn)代化圖書(shū)管理中。</p><p>  第一章 圖書(shū)館管理系統(tǒng)分析</p><p><b>  1.1 需求分析</b></p><p>  圖書(shū)館管理系統(tǒng)是一個(gè)高度集成的圖書(shū)信息處理系統(tǒng),通過(guò)將圖書(shū)館的各種功能進(jìn)行整合,從而達(dá)到顯示檢索信息

13、,提高工作效率,降低管理成本等目的。一個(gè)典型的圖書(shū)館管理系統(tǒng)應(yīng)該能夠管理所有的圖書(shū)種類(lèi),圖書(shū)信息以及讀者信息,還需要提供各種圖書(shū)信息的檢索查詢(xún)功能。該系統(tǒng)還需要能夠?qū)D書(shū)的借閱,歸還進(jìn)行管理,并對(duì)讀者的罰款進(jìn)行自動(dòng)計(jì)算。通過(guò)該系統(tǒng)的自動(dòng)化管理,能夠大大減少圖書(shū)館管理人員,還能減少管理人員的工作任務(wù),從而降低管理開(kāi)銷(xiāo)和成本。</p><p>  一個(gè)完整的圖書(shū)館管理系統(tǒng)包括前臺(tái)和后臺(tái),前臺(tái)主要是顯示在計(jì)算機(jī)屏幕上的

14、顯示界面,有各種指令按鈕,操作框以及文本框,后臺(tái)主要是為前臺(tái)的一些操作提供一些必要的數(shù)據(jù),也就是一個(gè)相對(duì)于系統(tǒng)比較完整的數(shù)據(jù)庫(kù),操作員以及各類(lèi)圖書(shū)的信息,借書(shū)者的信息等等。</p><p>  一個(gè)最基本的圖書(shū)館管理系統(tǒng)要有如下幾個(gè)重要功能:</p><p>  用戶(hù)在借書(shū)超期的情況下得到來(lái)自管理員的提醒。</p><p>  管理員可以方便進(jìn)行圖書(shū)管理,用戶(hù)管理,

15、管理員管理。圖書(shū)管理包括圖書(shū)信息以及圖書(shū)分類(lèi)的添加,修改,刪除。用戶(hù)管理包括用戶(hù)信息的添加,刪除,修改。管理員管理包括管理員信息的添加,刪除,修改等。</p><p>  用戶(hù)和管理員可以修改自己的密碼,修改前需先核實(shí)自己的原始密碼。</p><p>  未注冊(cè)用戶(hù)(游客)也可以瀏覽所有的圖書(shū)信息和分類(lèi)信息,但是無(wú)法借閱。</p><p> ?。?)實(shí)現(xiàn)模糊查詢(xún),使

16、用戶(hù)得到更多的相關(guān)記錄。并且考慮使用的方便性,一些經(jīng)常使用的輸入無(wú)須用戶(hù)輸入,比如進(jìn)行圖書(shū)查詢(xún)時(shí)圖書(shū)分類(lèi)只須用戶(hù)做選擇就可以。</p><p> ?。?)考慮程序執(zhí)行操作時(shí)可能出現(xiàn)的情況,比如刪除圖書(shū)分類(lèi)時(shí)該分類(lèi)下存在圖書(shū),程序自動(dòng)跳轉(zhuǎn)該分類(lèi)圖書(shū)查看。刪除某個(gè)用戶(hù),如果存在借書(shū)記錄則不允許刪除,跳轉(zhuǎn)到該用戶(hù)的借書(shū)記錄。等待管理員確認(rèn)該用戶(hù)所借圖書(shū)已經(jīng)全部歸還之后才允許刪除該用戶(hù)信息。</p><

17、;p>  一個(gè)圖書(shū)館管理系統(tǒng)要是能實(shí)現(xiàn)以上的各種功能,那么這個(gè)圖書(shū)館管理系統(tǒng)也就算是比較成功的一個(gè)系統(tǒng)了。</p><p><b>  1.2 功能分析</b></p><p>  根據(jù)以上需求分析,我所設(shè)計(jì)的圖書(shū)館管理系統(tǒng)有6個(gè)功能模塊,分別是圖書(shū)類(lèi)別管理模塊,圖書(shū)信息管理模塊,讀者信息管理模塊,新書(shū)訂購(gòu)管理模塊,圖書(shū)借閱模塊以及系統(tǒng)維護(hù)模塊。其中各功能模塊的

18、具體說(shuō)明如下:</p><p>  圖書(shū)類(lèi)別管理模塊:該模塊主要負(fù)責(zé)管理圖書(shū)館的圖書(shū)種類(lèi)信息,如圖書(shū)種類(lèi)的名稱(chēng)、可借天數(shù)、罰款數(shù)目等信息。</p><p>  圖書(shū)信息管理模塊:該模塊主要負(fù)責(zé)管理圖書(shū)館的圖書(shū)信息,如圖書(shū)編號(hào)、圖書(shū)名稱(chēng)、作者、出版社等信息。</p><p>  讀者信息管理模塊:該模塊主要負(fù)責(zé)管理圖書(shū)館的讀者信息,如讀者編號(hào)、讀者信息、證件號(hào)碼、最大

19、借書(shū)量等信息。</p><p>  圖書(shū)訂購(gòu)管理模塊:該模塊主要負(fù)責(zé)管理圖書(shū)館的新書(shū)訂購(gòu)信息、包括新書(shū)訂購(gòu)和驗(yàn)收新書(shū)兩個(gè)子模塊。</p><p>  圖書(shū)借閱管理模塊:該模塊主要負(fù)責(zé)圖書(shū)館的書(shū)籍借閱和歸還信息,包括圖書(shū)借閱、圖書(shū)歸還、圖書(shū)搜索3個(gè)子模塊。</p><p>  系統(tǒng)維護(hù)模塊:該模塊主要負(fù)責(zé)圖書(shū)館的工作人員信息,包括用戶(hù)管理和更改系統(tǒng)口令兩個(gè)子模塊。&l

20、t;/p><p>  1.3 系統(tǒng)用例圖設(shè)計(jì)</p><p>  圖書(shū)館管理系統(tǒng)是一個(gè)內(nèi)部人員使用的系統(tǒng),也就是說(shuō)不是所有的人都能夠使用它,只有圖書(shū)館的工作人員才能使用。而圖書(shū)館的工作人員也分為兩類(lèi),一類(lèi)是操作人員,主要負(fù)責(zé)圖書(shū)的借閱和歸還的工作;一類(lèi)是管理員,除了操作人員的所有功能外,還能夠?qū)?shū)籍列表,書(shū)籍信息,讀者信息等進(jìn)行管理。下面以管理員為例繪制其所對(duì)應(yīng)的用例圖如圖1.1所示。<

21、/p><p>  圖1.1 管理員用例圖</p><p>  1.4 繪制系統(tǒng)流程圖</p><p>  本系統(tǒng)首先需要對(duì)用戶(hù)的身份進(jìn)行識(shí)別,只有合法的用戶(hù)才能進(jìn)入系統(tǒng),否則將無(wú)法進(jìn)入系統(tǒng)。進(jìn)入系統(tǒng)后,首先打開(kāi)系統(tǒng)主窗體,在系統(tǒng)首頁(yè)的菜單欄或者功能區(qū)可以選擇各種導(dǎo)航鏈接來(lái)進(jìn)行各種操作。由于不同權(quán)限的用戶(hù)對(duì)于系統(tǒng)有不同的功能,下面以功能最多的管理員為例,其系統(tǒng)流程圖如圖1

22、.2所示。</p><p>  圖1.2 系統(tǒng)流程圖</p><p>  1.5 系統(tǒng)的開(kāi)發(fā)環(huán)境</p><p>  圖書(shū)館管理系統(tǒng)的具體開(kāi)發(fā)環(huán)境要求如下:</p><p>  系統(tǒng)開(kāi)發(fā)平臺(tái):Eclipse 3.4。</p><p>  數(shù)據(jù)庫(kù)管理系統(tǒng)軟件:SQL Server 2005。</p><

23、;p>  運(yùn)行平臺(tái):Windows 7。</p><p>  Java開(kāi)發(fā)包:JDK 5.0以上。</p><p>  分辨率:800×600以上。</p><p>  GUI開(kāi)發(fā)包:Swing。</p><p>  第二章 數(shù)據(jù)庫(kù)分析與設(shè)計(jì)</p><p><b>  2.1 數(shù)據(jù)庫(kù)分析&l

24、t;/b></p><p>  在開(kāi)發(fā)圖書(shū)館管理系統(tǒng)時(shí),考慮到圖書(shū)量大,數(shù)據(jù)庫(kù)維護(hù)大的特點(diǎn),選用SQL Server 2005作為數(shù)據(jù)庫(kù)管理系統(tǒng)。在SQL Server 2005中新增一個(gè)數(shù)據(jù)庫(kù),其數(shù)據(jù)庫(kù)名為db_library。數(shù)據(jù)庫(kù)中可以包含圖書(shū)信息、圖書(shū)類(lèi)別信息、圖書(shū)借閱信息、操作員信息、圖書(shū)訂購(gòu)信息及讀者信息等實(shí)體,用來(lái)存儲(chǔ)不同的信息。</p><p>  2.2 數(shù)據(jù)庫(kù)概念

25、設(shè)計(jì)</p><p>  本系統(tǒng)一共設(shè)計(jì)規(guī)劃出6個(gè)實(shí)體,分別是圖書(shū)類(lèi)別信息實(shí)體、圖書(shū)信息實(shí)體、讀者信息實(shí)體、操作員實(shí)體、圖書(shū)借閱信息實(shí)體以及圖書(shū)訂購(gòu)信息實(shí)體。</p><p>  圖書(shū)的類(lèi)別有很多,因此可以建立一個(gè)圖書(shū)館類(lèi)別信息表,專(zhuān)門(mén)用來(lái)保存圖書(shū)的類(lèi)別信息。同時(shí)因?yàn)槊糠N類(lèi)別的書(shū)籍閱讀時(shí)間有所不同,所以需要在類(lèi)別表中保存該類(lèi)別可借天數(shù)信息。圖書(shū)類(lèi)別信息實(shí)體E-R圖如圖2.1所示。</

26、p><p>  圖2.1 圖書(shū)類(lèi)別信息實(shí)體E-R圖</p><p>  對(duì)于圖書(shū)館來(lái)說(shuō)最重要的就是要管理其下的書(shū)籍,所以需要建立一個(gè)圖書(shū)信息表,用來(lái)保存圖書(shū)的所有信息。圖書(shū)信息實(shí)體E-R圖如圖2.2所示。</p><p>  圖2.2 圖書(shū)信息實(shí)體E-R圖</p><p>  要想在圖書(shū)館借書(shū)首先需要進(jìn)行登記并交付押金。領(lǐng)取讀書(shū)卡才能借書(shū)。所以需

27、要建立一個(gè)讀者信息表來(lái)保存圖書(shū)館的所有讀者的登記信息。讀者信息實(shí)體E-R圖如圖2.3所示。</p><p>  圖2.3 讀者信息實(shí)體E-R圖</p><p>  圖書(shū)館里一般有一個(gè)以上的系統(tǒng)操作員,需要建立一個(gè)操作員信息表,用來(lái)保存操作員的身份信息。操作員信息實(shí)體E-R圖如圖2.4所示。</p><p>  圖2.4 操作員信息實(shí)體E-R圖</p>

28、<p>  圖書(shū)館最大的功能就是能夠借書(shū),這時(shí)需要建立一個(gè)圖書(shū)借閱信息表,用來(lái)保存讀者的借書(shū)信息。圖書(shū)的借閱信息實(shí)體E-R圖如圖2.5所示。</p><p>  圖2.5 圖書(shū)的借閱信息實(shí)體E-R圖</p><p>  圖書(shū)館除了借書(shū),還需要到出版社或其他代理商訂購(gòu)新書(shū),這是需要建立一個(gè)圖書(shū)訂購(gòu)信息表,用來(lái)保存所有的訂購(gòu)信息。圖書(shū)訂購(gòu)信息實(shí)體E-R圖如圖2.6所示。</p&

29、gt;<p>  圖2.6 圖書(shū)訂購(gòu)信息實(shí)體E-R圖</p><p>  2.3 數(shù)據(jù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>  根據(jù)設(shè)計(jì)好的各實(shí)體E-R圖創(chuàng)建數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),數(shù)據(jù)庫(kù)各表的結(jié)構(gòu)如下:</p><p>  (1)圖書(shū)類(lèi)別信息采表用來(lái)儲(chǔ)存所有的圖書(shū)類(lèi)別信息,包括圖書(shū)類(lèi)別編號(hào)、圖書(shū)類(lèi)別名稱(chēng)、可借天數(shù)以及遲還一天的罰款數(shù)目4個(gè)字段。該表的邏輯結(jié)構(gòu)如表2

30、.1所示。</p><p>  表2.1 圖書(shū)類(lèi)別信息表</p><p>  (2)圖書(shū)信息表用來(lái)儲(chǔ)存所有的圖書(shū)信息,包括圖書(shū)編號(hào)、類(lèi)別編號(hào)、圖書(shū)名稱(chēng)、作者、譯者、出版社、出版日期以及書(shū)籍價(jià)格8個(gè)字段。該表的邏輯結(jié)構(gòu)如表2.2所示。</p><p>  表2.2 圖書(shū)信息表</p><p> ?。?)讀者信息表用來(lái)儲(chǔ)存所有的讀者信息,包括讀者

31、姓名、性別、年齡、證件號(hào)碼、會(huì)員證有效日期、最大借書(shū)量、電話號(hào)碼、押金、證件類(lèi)型、職業(yè)、讀者編號(hào)以及辦證日期12個(gè)字段。該表的邏輯結(jié)構(gòu)如表2.3所示。</p><p>  表2.3 讀者信息表</p><p> ?。?)操作員信息表用來(lái)保存操作員信息,包括操作員編號(hào)、用戶(hù)名、性別、年齡、證件號(hào)碼、工作時(shí)間、電話號(hào)碼、是否為管理員、密碼9個(gè)字段。該表的邏輯結(jié)構(gòu)如表2.4所示。</p&g

32、t;<p>  表2.4 操作員信息表</p><p> ?。?)圖書(shū)借閱信息表用來(lái)保存所有圖書(shū)的借閱信息,包括借閱編號(hào)、書(shū)籍編號(hào)、操作員編號(hào)、讀者編號(hào)、是夠歸還、借書(shū)日期以及應(yīng)還日期7字段。該表的邏輯結(jié)構(gòu)如表2.5所示。</p><p>  表2.5 圖書(shū)借閱信息表</p><p> ?。?)圖書(shū)訂購(gòu)信息表用來(lái)保存圖書(shū)館的所有訂購(gòu)信息,包括書(shū)籍編號(hào)、

33、訂購(gòu)日期、訂購(gòu)數(shù)量、操作員、是否驗(yàn)收以及書(shū)籍折扣6個(gè)字段。該表的邏輯結(jié)構(gòu)如表2.6所示。</p><p>  表2.6 圖書(shū)訂購(gòu)信息表</p><p>  2.4 各表之間的聯(lián)系圖</p><p>  各表間的聯(lián)系圖如圖2.7所示。</p><p>  圖2.7 各表間聯(lián)系圖</p><p>  第三章 系統(tǒng)設(shè)計(jì)與功能

34、實(shí)現(xiàn)</p><p>  3.1 數(shù)據(jù)庫(kù)Dao類(lèi)的構(gòu)建</p><p>  首先定義了一個(gè)類(lèi)Dao,并為該類(lèi)添加了4中方法,分別是構(gòu)造方法Dao、查詢(xún)方法executeQuery、更新方法executeUpdate以及關(guān)閉連接方法close。</p><p>  public class Dao {</p><p>  protected s

35、tatic String dbClassName = </p><p>  "com.microsoft.sqlserver.jdbc.SQLServerDriver";//數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)類(lèi)</p><p>  protected static String dbUrl = "jdbc:sqlserver://localhost:1433;"<

36、/p><p>  + "DatabaseName=db_library;";//數(shù)據(jù)庫(kù)連接URL</p><p>  protected static String dbUser = "sa";//數(shù)據(jù)庫(kù)用戶(hù)名</p><p>  protected static String dbPwd = "123"

37、;;//數(shù)據(jù)庫(kù)密碼</p><p>  private static Connection conn = null;//數(shù)據(jù)庫(kù)連接對(duì)象</p><p>  private static String ISBN;</p><p>  private Dao() {//構(gòu)造方法</p><p><b>

38、  try {</b></p><p>  if (conn == null) {//如果連接對(duì)象為空</p><p>  Class.forName(dbClassName);//加載驅(qū)動(dòng)類(lèi)</p><p>  conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);//獲

39、得連接對(duì)象</p><p><b>  }</b></p><p>  } catch (Exception ee) {</p><p>  ee.printStackTrace();</p><p><b>  }</b></p><p><b>  }</

40、b></p><p>  private static ResultSet executeQuery(String sql) {//查詢(xún)方法</p><p><b>  try {</b></p><p>  if(conn==null) new Dao(); //如果連接對(duì)象為空,則重新調(diào)用構(gòu)造方法</p><

41、p>  return conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,</p><p>  ResultSet.CONCUR_UPDATABLE).executeQuery(sql);//執(zhí)行查詢(xún)</p><p>  } catch (SQLException e) {</p><p>  e.prin

42、tStackTrace();</p><p>  return null;//返回null值</p><p>  } finally {</p><p><b>  }</b></p><p><b>  }</b></p><p>  private static

43、int executeUpdate(String sql) {//更新方法</p><p><b>  try {</b></p><p>  if(conn==null) new Dao();//如果連接對(duì)象為空,則重新調(diào)用構(gòu)造方法</p><p>  return conn.createStatement().executeUpda

44、te(sql);//執(zhí)行更新</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p>  return -1;</p><p>  } finally {</p><p><b>  }</b><

45、/p><p><b>  }</b></p><p>  public static void close() {//關(guān)閉方法</p><p><b>  try {</b></p><p>  conn.close();//關(guān)閉連接對(duì)象</p><p>  } catch

46、(SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }finally{</b></p><p>  conn = null;//設(shè)置連接對(duì)象為null值</p><p><b>  }</b></p><

47、;p><b>  }</b></p><p>  3.2 系統(tǒng)登錄模塊</p><p>  對(duì)于圖書(shū)館管理系統(tǒng)而言,不是所有的用戶(hù)都是可以使用的,所有需要添加一個(gè)登陸模塊。通過(guò)該模塊來(lái)對(duì)用戶(hù)的合法性進(jìn)行判斷,只有合法的用戶(hù)才能進(jìn)入到系統(tǒng)。整個(gè)登陸模塊的實(shí)現(xiàn)非常簡(jiǎn)單,相信讀者能夠快速掌握其開(kāi)發(fā)過(guò)程。登錄模塊的運(yùn)行結(jié)果如圖3.1所示。</p><

48、p>  圖3.1 系統(tǒng)登錄界面</p><p>  3.2.1 登陸窗體界面設(shè)計(jì)與實(shí)現(xiàn)</p><p>  登陸窗體的界面設(shè)計(jì)我依然采用的是比較傳統(tǒng)的方法,新建一個(gè)類(lèi)BookLoginFrame類(lèi),用來(lái)顯示登錄窗體。在該窗體中需要使用到四類(lèi)控件,分別是JLabel、JTextFieid、JPasswordField以及JButton。其中控件JLabel是用來(lái)顯示頂部的圖片以及標(biāo)簽文

49、本;控件JTextFieid用來(lái)接收用戶(hù)名輸入信息;控件JPasswordField用來(lái)接收密碼輸入信息;控件JButton用來(lái)創(chuàng)建登陸和重置按鈕。</p><p>  3.2.2 操作員登陸</p><p>  在Dao類(lèi)中新增一個(gè)方法check,通過(guò)該方法來(lái)檢測(cè)用戶(hù)信息是否合法。該方法接收兩個(gè)參數(shù),分別是操作員用戶(hù)名name,操作員密碼passsward。主要方法如下:</p&g

50、t;<p>  public static Operater check(String name, String password) {</p><p>  Operater operater=new Operater();//操作員信息對(duì)象</p><p>  String sql = "select * from tb_operator where name=

51、'" + name</p><p>  + "' and password='" + password + "'and admin=1";</p><p>  ResultSet rs = Dao.executeQuery(sql);</p><p><b>  try

52、{</b></p><p>  while (rs.next()) {</p><p>  operater.setId(rs.getString("id"));</p><p>  operater.setName(rs.getString("name"));</p><p>  oper

53、ater.setGrade(rs.getString("admin"));</p><p>  operater.setPassword(rs.getString("password"));</p><p><b>  ……</b></p><p><b>  }</b></p

54、><p><b>  }</b></p><p><b>  }</b></p><p><b>  3.3 主窗體模塊</b></p><p>  圖書(shū)館管理系統(tǒng)的主窗體模式是由三個(gè)部分組成的。第一部分是位于主窗體上組上端的系統(tǒng)菜單欄,用來(lái)實(shí)現(xiàn)鏈接系統(tǒng)功能菜單。第二部分位于菜單欄

55、下面的工具欄,用來(lái)提供各種常用功能鏈接。第三部分位于工具下的系統(tǒng)功能窗口區(qū)域,主要用來(lái)顯示各種功能窗口。</p><p>  3.3.1 主窗體界面設(shè)計(jì)</p><p>  在主窗體中可以顯示其他功能窗體,所以需要在該窗體中加入一個(gè)桌面窗體。通過(guò)將其他功能窗體加入到該窗體中。從而實(shí)現(xiàn)多窗體顯。同時(shí)在主窗口體中,還需要添加一個(gè)main方法,該方法為系統(tǒng)入口的方法,通過(guò)執(zhí)行該方法來(lái)執(zhí)行系統(tǒng)。其

56、主要代碼如下: </p><p>  public class Library extends JFrame {</p><p>  private static final JDesktopPane </p><p>  DESKTOP_PANE = new JDesktopPane();//桌面窗體</p><p>  public st

57、atic void main(String[] args) {</p><p><b>  try {</b></p><p>  UIManager.setLookAndFeel(UIManager</p><p>  .getSystemLookAndFeelClassName());//設(shè)置系統(tǒng)界面外觀</p><p&

58、gt;  new BookLoginIFrame();//登錄窗口</p><p>  } catch (Exception ex) {</p><p>  ex.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p>

59、<p>  public static void addIFame(JInternalFrame iframe) { // 添加子窗體的方法</p><p>  DESKTOP_PANE.add(iframe);//新增子窗體</p><p><b>  }</b></p><p><b>  }</b>&

60、lt;/p><p>  下面再來(lái)配置主窗體的其他屬性,首先需要設(shè)置其大小和位置,然后還要設(shè)置其菜單欄和工具欄,最后需要在桌面窗體中添加一個(gè)背景圖片。其代碼實(shí)現(xiàn)如下。</p><p>  public Library() {</p><p><b>  super();</b></p><p>  setDefaultClos

61、eOperation(</p><p>  WindowConstants.EXIT_ON_CLOSE);////設(shè)置關(guān)閉按鈕處理事件</p><p>  Toolkit tool = Toolkit.getDefaultToolkit();//獲得默認(rèn)的工具箱</p><p>  Dimension screenSize = tool.getScreenS

62、ize();//獲得屏幕的大小</p><p>  setSize(800, 600);//設(shè)置窗體大小</p><p>  setLocation((screenSize.width - getWidth()) / 2,</p><p>  (screenSize.height - getHeight()) / 2);//設(shè)置窗體位

63、置</p><p>  setTitle("圖書(shū)館管理系統(tǒng)");//設(shè)置窗體標(biāo)題</p><p>  JMenuBar menuBar = createMenu(); //調(diào)用創(chuàng)建菜單欄的方法</p><p>  setJMenuBar(menuBar);//設(shè)置菜單欄</p><p>  JTo

64、olBar toolBar = createToolBar(); // 調(diào)用創(chuàng)建工具欄的方法</p><p>  getContentPane().add(toolBar, BorderLayout.NORTH);//設(shè)置工具欄</p><p>  final JLabel label = new JLabel();//創(chuàng)建一個(gè)標(biāo)簽,用來(lái)顯示圖片</p><p>

65、  label.setBounds(0, 0, 0, 0);//設(shè)置窗體的大小和位置</p><p>  label.setIcon(null); // 窗體背景</p><p>  DESKTOP_PANE.addComponentListener(new ComponentAdapter() {</p><p>  public void component

66、Resized(final ComponentEvent e) {</p><p>  Dimension size = e.getComponent().getSize();//獲得組件大小</p><p>  label.setSize(e.getComponent().getSize());//設(shè)置標(biāo)簽大小</p><p>  label.setText(&q

67、uot;<html><img width=" + size.width + " height="</p><p>  + size.height + " src='"</p><p>  + this.getClass().getResource("/backImg.jpg")</p>

68、;<p>  + "'></html>");//設(shè)置標(biāo)簽文本</p><p><b>  }</b></p><p><b>  };</b></p><p>  DESKTOP_PANE.add(label,new Integer(Integer.MIN_VAL

69、UE));//將標(biāo)簽添加到桌面窗體</p><p>  getContentPane().add(DESKTOP_PANE);//將桌面窗體添加到主窗體中</p><p><b>  }</b></p><p>  3.3.2 主窗體菜單欄設(shè)計(jì)</p><p>  在Library類(lèi)中定義一個(gè)createMenu方法,在

70、該方法中實(shí)現(xiàn)菜單欄的設(shè)計(jì)。其運(yùn)行界面如圖3.2所示。</p><p>  圖3.2 主窗體界面</p><p>  3.4 圖書(shū)類(lèi)別管理模塊</p><p>  圖書(shū)類(lèi)別管理模塊包含兩個(gè)子模塊,分別是圖書(shū)類(lèi)別添加和圖書(shū)類(lèi)別修改。其中圖書(shū)類(lèi)別添加模塊用來(lái)錄入新的圖書(shū)類(lèi)別信息,圖書(shū)列別修改模塊用來(lái)修改已有的圖書(shū)列別信息。系統(tǒng)界面如圖3.3所示。</p>&

71、lt;p>  圖3.3 圖書(shū)類(lèi)別修改界面</p><p>  3.4.1 圖書(shū)類(lèi)別添加模塊</p><p>  要添加圖書(shū)類(lèi)別信息,首先要在Dao中添加一個(gè)InsertbookType方法,通過(guò)該方法來(lái)接受用戶(hù)輸入的所有書(shū)籍類(lèi)別信息,然后執(zhí)行插入操作。其主要方法如下:</p><p>  public static int InsertBookType(St

72、ring bookTypeName,String days,double fk){</p><p><b>  int i=0;</b></p><p>  try{String sql="insert into</p><p>  tb_bookType(typeName,days,fk)</p><p> 

73、 values('"+bookTypeName+"','"+days+"',"+fk+")";</p><p>  i=Dao.executeUpdate(sql);//執(zhí)行插入操作</p><p><b>  }</b></p><p>&l

74、t;b>  ……</b></p><p><b>  }</b></p><p>  3.4.2 圖書(shū)類(lèi)別修改模塊</p><p>  修改圖書(shū)類(lèi)別信息同保存圖書(shū)類(lèi)別信息非常類(lèi)似,首先在Dao中添加一個(gè)方法UpdatebookType。通過(guò)該方法來(lái)接收?qǐng)D書(shū)修改表單中提交的書(shū)籍類(lèi)別信息。其代碼如下:</p><

75、;p>  public static int UpdatebookType(String id,String typeName,String days,String fk){</p><p><b>  int i=0;</b></p><p>  try{String sql="update </p><p>  tb_boo

76、kType set typeName='"+typeName+"',</p><p>  days='"+days+"',fk='"+fk+"' where id='"+id+"'";</p><p>  //System.out.pri

77、ntln(sql);</p><p>  i=Dao.executeUpdate(sql);//執(zhí)行更新操作</p><p><b>  }</b></p><p><b>  ……</b></p><p><b>  }</b></p><p>  修

78、改圖書(shū)類(lèi)別信息,是通過(guò)單擊修改按鈕執(zhí)行的,上面我們已經(jīng)為修改按鈕注冊(cè)了一個(gè)監(jiān)聽(tīng)器,其對(duì)應(yīng)的監(jiān)聽(tīng)器類(lèi)為ButtonActionLinter。下面來(lái)實(shí)現(xiàn)該監(jiān)聽(tīng)器類(lèi),其實(shí)現(xiàn)代碼如下:</p><p>  class ButtonAddListener implements ActionListener{</p><p>  public void actionPerformed(ActionEv

79、ent e){</p><p>  Object selectedItem = bookTypeModel.getSelectedItem();</p><p>  int i=Dao.UpdatebookType(BookTypeId.getText().trim(),selectedItem.</p><p>  toString(), days.getText

80、().trim(),fk.getText().trim());</p><p>  System.out.println(i);</p><p>  if(i==1){//如果返回值為1,則表示修改成功</p><p>  JOptionPane.showMessageDialog(null, "修改成功");</p><p&

81、gt;  Object[][] results=getFileStates(Dao.selectBookCategory());</p><p>  model.setDataVector(results,columnNames);</p><p>  table.setModel(model);</p><p><b>  }</b><

82、;/p><p><b>  }</b></p><p><b>  }</b></p><p>  3.5 圖書(shū)信息管理模塊</p><p>  圖書(shū)信息管理模塊包含兩個(gè)子模塊,分別是圖書(shū)信息添加和圖書(shū)信息修改。其中圖書(shū)信息添加模塊用來(lái)錄入新的圖書(shū)信息,圖書(shū)信息修改模塊用來(lái)修改已有的圖書(shū)信息。</

83、p><p>  3.5.1 圖書(shū)信息添加界面設(shè)計(jì)</p><p>  圖書(shū)信息添加窗體一共包含三個(gè)部分,第一部分是位于窗體最上端的圖片。第二部分是位于中間的主面板,用來(lái)提供各種標(biāo)簽和表單元素。第三部分是位于主面板下的按鈕面板,用來(lái)提供添加和關(guān)閉兩個(gè)按鈕。其運(yùn)行界面如圖3.4所示。</p><p>  圖3.4 圖書(shū)信息添加界面</p><p> 

84、 主面板是整個(gè)窗體最重要也是最核心的部分,其部分實(shí)現(xiàn)代碼如下:</p><p>  public BookAddIFrame() {</p><p><b>  super();</b></p><p>  final BorderLayout borderLayout = new BorderLayout();//創(chuàng)建邊框布局管理器</

85、p><p>  getContentPane().setLayout(borderLayout);//設(shè)置布局</p><p>  setIconifiable(true);// 設(shè)置窗體可最小化</p><p>  setClosable(true);// 設(shè)置窗體可關(guān)閉</p><p>  setTitle("圖書(shū)信息添加&quo

86、t;);// 設(shè)置窗體標(biāo)題</p><p>  setBounds(100, 100, 396, 260);// 設(shè)置窗體位置和大小</p><p>  final JPanel mainPanel = new JPanel();//創(chuàng)建中心面板</p><p>  mainPanel.setBorder(new EmptyBorder(5, 10, 5, 10)

87、);//設(shè)置邊框</p><p>  final GridLayout gridLayout = new GridLayout(0, 4);//創(chuàng)建表格布局管理器</p><p>  gridLayout.setVgap(5);//設(shè)置組件之間垂直距離</p><p>  gridLayout.setHgap(5);//設(shè)置組件之間平行距離</p>&

88、lt;p>  mainPanel.setLayout(gridLayout);//設(shè)置布局</p><p>  getContentPane().add(mainPanel);//將中心面板加入到窗體</p><p>  final JLabel ISBNLabel = new JLabel();//創(chuàng)建圖書(shū)編號(hào)標(biāo)簽</p><p>  ISBNLabel.

89、setText("圖書(shū)編號(hào):");//設(shè)置標(biāo)簽文本</p><p>  mainPanel.add(ISBNLabel);//添加到中心面板</p><p>  ISBN = new JTextField("請(qǐng)輸入13位書(shū)號(hào)",13);//創(chuàng)建書(shū)號(hào)文本框</p><p>  ISBN.setDocument(new MyDoc

90、ument(13)); //設(shè)置書(shū)號(hào)文本框最大輸入值為13</p><p>  ISBN.setColumns(13);//設(shè)置文本框長(zhǎng)度</p><p>  ISBN.addKeyListener(new ISBNkeyListener());//注冊(cè)監(jiān)聽(tīng)器</p><p>  ISBN.addFocusListener(new ISBNFocusListener

91、());//注冊(cè)監(jiān)聽(tīng)器</p><p>  mainPanel.add(ISBN);</p><p><b>  ……</b></p><p><b>  }</b></p><p>  3.5.2 檢測(cè)書(shū)籍編號(hào)是否已存在</p><p>  因?yàn)椴豢赡艽嬖谥貜?fù)的書(shū)籍編號(hào)。為

92、了防止操作員的操作錯(cuò)誤,所以需要提供一個(gè)書(shū)籍編號(hào)監(jiān)測(cè)系統(tǒng)。如果該書(shū)籍號(hào)已存在,則不能進(jìn)行添加,否則可以進(jìn)行添加。</p><p>  要檢測(cè)書(shū)籍編號(hào)是否存在,需要在Dao類(lèi)中添加一個(gè)方法,該方法用來(lái)接收輸入的書(shū)籍編號(hào),然后查詢(xún)?cè)摃?shū)籍編號(hào)對(duì)應(yīng)的書(shū)籍記錄,其主要方法如下:</p><p>  public static List selectBookInfo(String ISBN) {//根

93、據(jù)圖書(shū)編號(hào)查詢(xún)圖書(shū)</p><p>  List list=new ArrayList();//保存所有查詢(xún)到的書(shū)籍信息</p><p>  String sql = "select * from tb_bookInfo where ISBN='"+ISBN+"'";</p><p>  ResultSet

94、rs = Dao.executeQuery(sql);//執(zhí)行查詢(xún)</p><p>  ……//插入數(shù)據(jù),關(guān)閉連接</p><p><b>  }</b></p><p>  對(duì)書(shū)籍編號(hào)進(jìn)行檢測(cè),一般是在操作員輸入完書(shū)籍編號(hào),并準(zhǔn)備輸入其他信息時(shí)來(lái)完成。這是需要新建一個(gè)ISBNFFocusListener監(jiān)聽(tīng)類(lèi),該類(lèi)繼承了FocusAdoper

95、類(lèi),并實(shí)現(xiàn)其中的focusLost,其實(shí)現(xiàn)代碼如下:</p><p>  class ISBNFocusListener extends FocusAdapter {</p><p>  public void focusLost(FocusEvent e){</p><p>  if(!Dao.selectBookInfo(ISBN.getText().trim(

96、)).isEmpty()){</p><p>  JOptionPane.showMessageDialog(null, "添加書(shū)號(hào)重復(fù)!");</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  }&

97、lt;/b></p><p><b>  }</b></p><p>  3.5.3 圖書(shū)信息添加</p><p>  要添加書(shū)籍信息,首先要在Dao中添加一個(gè)Insertbook方法,通過(guò)該方法來(lái)接受用戶(hù)輸入的所有書(shū)籍信息,然后執(zhí)行插入操作。其主要方法如下:</p><p>  public static int

98、 Insertbook(String ISBN,String typeId,String bookname,</p><p>  String writer,String translator,String publisher,Date date,Double price){</p><p><b>  int i=0;</b></p><p>

99、;<b>  try{</b></p><p>  String sql="insert into tb_bookInfo(ISBN,typeId,bookname,writer,translator,"+"publisher,date,price) values('"+ISBN+"','"+ty

100、peId+"','"+bookname+"',"+ "'"+writer+"','"+translator+"','"+publisher+"','"+date+"',"+price+")";

101、</p><p>  i=Dao.executeUpdate(sql);//執(zhí)行插入操作</p><p><b>  }</b></p><p><b>  ……</b></p><p><b>  }</b></p><p>  3.5.4 圖書(shū)修改信

102、息</p><p>  修改圖書(shū)信息同保存圖書(shū)信息非常類(lèi)似,首先在Dao中添加一個(gè)方法Updatebook。通過(guò)該方法來(lái)接收?qǐng)D書(shū)修改表單中提交的書(shū)籍信息。其代碼如下:</p><p>  public static int Updatebook(String ISBN,String typeId,String bookname,</p><p>  String w

103、riter,String translator,String publisher,Date date,Double price){</p><p>  int i=0;//更新記錄數(shù)</p><p>  try{String sql="update tb_bookInfo set ISBN='"+ISBN+"' , typeI

104、d='"+typeId+"',bookname='"+bookname+"',</p><p>  writer='"+writer+"',</p><p>  translator='"+translator+"',</p><

105、;p>  publisher='"+publisher+"',</p><p>  date='"+date+"',</p><p>  price="+price+" where ISBN='"+ISBN+"'";</p><

106、p>  i=Dao.executeUpdate(sql);//執(zhí)行更新</p><p><b>  }</b></p><p><b>  ……</b></p><p><b>  }</b></p><p>  修改圖書(shū)信息,是通過(guò)單擊修改按鈕執(zhí)行的,上面我們已經(jīng)為修改

107、按鈕注冊(cè)了一個(gè)監(jiān)聽(tīng)器,其對(duì)應(yīng)的監(jiān)聽(tīng)器類(lèi)為UpdateBookActionLinter。下面來(lái)實(shí)現(xiàn)該監(jiān)聽(tīng)器類(lèi),其實(shí)現(xiàn)代碼如下:</p><p>  class UpdateBookActionListener implements ActionListener {</p><p>  public void actionPerformed(final ActionEvent e) {<

108、;/p><p>  int i=Dao.Updatebook(ISBNs, bookTypes, bookNames, writer,

109、 translators,publishers,Date.valueOf(pubDates),Double.parseDouble(prices));</p><p>  if(i==1){//如果返回更新記錄數(shù)為1,表示修改成功</p><p>  JOptionPane.showMessageDialog(null, "修改成功&qu

110、ot;);Object[][]results=getFileStates(Dao.selectBookInfo());//重新獲得書(shū)籍信息</p><p>  DefaultTableModel model=new DefaultTableModel();//獲得表格模型</p><p>  table.setModel(model);//設(shè)置表格模型</p><

111、p>  model.setDataVector(results, columnNames);//設(shè)置模型數(shù)據(jù)和列名</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  3.6 讀者信息

112、管理模塊</p><p>  讀者信息管理模塊包含兩個(gè)子模塊,分別是讀者信息添加和讀者信息修改與刪除。其中讀者信息添加模塊用來(lái)錄入新的讀者信息,讀者信息修改與刪除模塊用來(lái)修改和刪除已有的讀者信息。其系統(tǒng)運(yùn)行界面如圖3.5所示。</p><p>  圖3.5 讀者信息管理模塊運(yùn)行界面</p><p>  3.6.1 讀者信息添加</p><p>

113、;  要添加讀者信息,首先要在Dao中添加一個(gè)InsertReader方法,通過(guò)該方法來(lái)接受用戶(hù)輸入的所有讀者信息,然后執(zhí)行插入操作。其主要方法如下: </p><p>  public static int InsertReader(String name,String sex,String age,String identityCard,Date date,String maxNum,String tel,D

114、ouble keepMoney,String zj,String zy,Date bztime,String ISBN){</p><p><b>  int i=0;</b></p><p>  try{String sql="insert into tb_reader(name,sex,age,identityCard,date,maxNum,</

115、p><p>  tel,keepMoney,zj,zy,bztime,ISBN)values('"+name+"','"+sex+"','"+age+"','"+identityCard+"','"+date+"','"+

116、maxNum+"','"+tel+"',"+keepMoney+",'"+zj+"','"+zy+"',</p><p>  '"+bztime+"','"+ISBN+"')";</

117、p><p>  System.out.println(sql);</p><p>  i=Dao.executeUpdate(sql);//執(zhí)行插入操作</p><p><b>  }</b></p><p><b>  ……</b></p><p><b>  }&l

118、t;/b></p><p>  3.6.2 讀者信息修改與刪除</p><p>  修改與刪除讀者信息同保存讀者信息非常類(lèi)似,首先在Dao中添加兩個(gè)方法UpdateReader及DelReader。通過(guò)這兩個(gè)方法來(lái)接收?qǐng)D讀者修改表單中提交的讀者信息。其主要代碼如下:</p><p>  public static int UpdateReader(String

119、 id,String name,String sex,String age,String identityCard,Date date,String maxNum,String tel,</p><p>  Double keepMoney,String zj,String zy,Date bztime,String ISBN){</p><p><b>  int i=0;&l

120、t;/b></p><p>  try{String sql="update tb_reader set </p><p>  name='"+name+"',sex='"+sex+"',</p><p>  age='"+age+"',ide

121、ntityCard='"+identityCard+"',</p><p>  date='"+date+"',maxNum='"+maxNum+"',</p><p>  tel='"+tel+"',keepMoney="+keepMo

122、ney+",</p><p>  zj='"+zj+"',zy='"+zy+"',</p><p>  bztime='"+bztime+"'where ISBN='"+ISBN+"'";</p><p>

123、;  i=Dao.executeUpdate(sql);// 執(zhí)行更新</p><p>  }catch(Exception e){</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  Dao.close();//關(guān)閉連接</p><

124、;p><b>  ……</b></p><p><b>  }</b></p><p>  public static int DelReader(String ISBN){</p><p><b>  int i=0;</b></p><p>  try{String

125、 sql="delete from tb_reader where ISBN='"+ISBN+"'";</p><p>  //System.out.println(sql);</p><p>  i=Dao.executeUpdate(sql);</p><p>  }catch(Exception e){&

126、lt;/p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  Dao.close();//關(guān)閉連接</p><p><b>  ……</b></p><p><b>  }</b></p&

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論