高校科研論文管理軟件設(shè)計(jì)_第1頁(yè)
高校科研論文管理軟件設(shè)計(jì)_第2頁(yè)
高??蒲姓撐墓芾碥浖O(shè)計(jì)_第3頁(yè)
高??蒲姓撐墓芾碥浖O(shè)計(jì)_第4頁(yè)
高校科研論文管理軟件設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、沈陽(yáng)航空航天大學(xué)課課 程程 設(shè)設(shè) 計(jì)計(jì) 報(bào)報(bào) 告告課程設(shè)計(jì)名稱:軟軟件件綜綜合合課課程程設(shè)設(shè)計(jì)計(jì)課程設(shè)計(jì)題目:高??蒲姓撐墓芾碥浖O(shè)計(jì)高??蒲姓撐墓芾碥浖O(shè)計(jì)院(系): 計(jì)算機(jī)學(xué)院專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí): 學(xué) 號(hào):姓 名: 指導(dǎo)教師: 王丹沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 學(xué)術(shù)誠(chéng)信聲明 本人聲明本人聲明:所呈交的報(bào)告(含電子版及數(shù)據(jù)文件)是我個(gè)人在導(dǎo)師指導(dǎo)下獨(dú)立進(jìn)行設(shè)計(jì)工作及取得的研究結(jié)果。盡我所知,除了文中特別加以標(biāo)注或致謝中所羅列的內(nèi)容以外,報(bào)告中不包含其他人己經(jīng)發(fā)表或撰寫過(guò)的研究結(jié)果,也不包含其它教育機(jī)構(gòu)使用過(guò)的材料。與我一同工作的同學(xué)對(duì)本研究所做的任何貢獻(xiàn)均己在報(bào)告中做了明確的說(shuō)

2、明并表示了謝意。報(bào)告資料及實(shí)驗(yàn)數(shù)據(jù)若有不實(shí)之處,本人愿意接受本教學(xué)環(huán)節(jié)“不及格”和“重修或重做”的評(píng)分結(jié)論并承擔(dān)相關(guān)一切后果。 本人簽名: 日期: 年 月 日沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 I 沈陽(yáng)航空航天大學(xué)沈陽(yáng)航空航天大學(xué)課課程程設(shè)設(shè)計(jì)計(jì)任任務(wù)務(wù)書書課程名稱軟軟件件綜綜合合課課程程設(shè)設(shè)計(jì)計(jì)專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)生姓名班級(jí)學(xué)號(hào)題目名稱高??蒲姓撐墓芾碥浖O(shè)計(jì)高??蒲姓撐墓芾碥浖O(shè)計(jì)起止日期2015年12月21日起至2016年1月15日止課設(shè)內(nèi)容和要求: 通過(guò)資料收集,熟悉高??蒲姓撐墓芾淼幕緲I(yè)務(wù)需求,完成系統(tǒng)的需求分析和概要設(shè)計(jì),綜合運(yùn)用編程語(yǔ)言、數(shù)據(jù)庫(kù)、軟件工程等軟件開發(fā)相

3、關(guān)知識(shí)和技術(shù),采用 B/S 或 C/S 結(jié)構(gòu),完成一個(gè)高??蒲姓撐墓芾淼脑O(shè)計(jì)與實(shí)現(xiàn),具體要求包括:1、熟悉高校科研論文管理軟件的基本業(yè)務(wù),完成需求分析;2、編寫一個(gè)高??蒲姓撐墓芾碥浖饕ㄕ撐男畔⒐芾?、教師信息管理、院系信息管理、出版社信息管理以及論文級(jí)別管理等的增刪改查功能;3、要求界面美觀友好,便于操作,保證系統(tǒng)的易用性?;疽螅?、獨(dú)立完成系統(tǒng)的設(shè)計(jì)、編碼和調(diào)試。 2、按照課程設(shè)計(jì)規(guī)范書寫課程設(shè)計(jì)報(bào)告。參考資料:1、數(shù)據(jù)庫(kù)系統(tǒng)概論、軟件工程導(dǎo)論等方面的資料2、C#程序設(shè)計(jì)、JSP 程序設(shè)計(jì)、VC+程序設(shè)計(jì)等方面的資料教教研研室室審審核核意意見見:同同意意( );不不同同意意( )

4、 教教研研室室主主任任簽簽字字:指導(dǎo)教師(簽名)指導(dǎo)教師(簽名)2015年12月21日學(xué)生簽名學(xué)生簽名2015年12月21日沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 II 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 III 課程設(shè)計(jì)總結(jié):課程設(shè)計(jì)總結(jié):在開始收到本次課設(shè)題目時(shí),在心里已經(jīng)有了一個(gè)大概的方向,由于這學(xué)期學(xué)習(xí)了 oracle 數(shù)據(jù)庫(kù)和 java 編程語(yǔ)言,雖然不算熟練,但本次實(shí)驗(yàn)完全可以用oracle 和 java 完成。首先,按照老師的要求,我們編寫了需求分析。雖然時(shí)間有限,但是大體上的思路和方法已經(jīng)決定了下來(lái)。開始我感覺(jué)這次課設(shè)的難度不大,但隨著編程的開始,我發(fā)現(xiàn)自己在 java 方面的編程能力的確有些

5、差缺,導(dǎo)致自己所編寫的程序中沒(méi)有完全體現(xiàn)出 java 語(yǔ)言的特點(diǎn)和優(yōu)勢(shì),不過(guò)本次課設(shè)也鍛煉了自己的能力,學(xué)習(xí)的東西只有在使用時(shí)才能真正掌握。在完成本次課設(shè)時(shí),遇到了很多問(wèn)題,自己有時(shí)的觀點(diǎn)很好,但完成起來(lái)還是有一些難度,自己通過(guò)查閱資料、上網(wǎng)查詢和請(qǐng)教他人,解決了不少的問(wèn)題,同時(shí)也增長(zhǎng)了自己的知識(shí)。本次課設(shè),由于時(shí)間比較緊,所以程序還有一些小問(wèn)題和一些自己設(shè)想好的功能為實(shí)現(xiàn),感覺(jué)自己的程序的提升空間還有很大,仍然需要自己的學(xué)習(xí)和發(fā)展。我感覺(jué)學(xué)習(xí)是一個(gè)不間斷的過(guò)程,短短時(shí)間并不能掌握 oracle 和 java,但是這的確是給了自己一個(gè)開始,也增加了自己的學(xué)習(xí)興趣。雖然也許課設(shè)已經(jīng)結(jié)束,但自己的

6、學(xué)習(xí)卻永遠(yuǎn)不會(huì)斷。希望通過(guò)自己的努力學(xué)好 oracle 和 java,也為自己的畢設(shè)打下基礎(chǔ),為自己的未來(lái)打下基礎(chǔ)。沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 IV 目目 錄錄1 需求分析需求分析.11.1 項(xiàng)目引言 .11.2 功能需求 .11.3 環(huán)境需求 .22 總體設(shè)計(jì)總體設(shè)計(jì).32.1 總體概述 .32.2 系統(tǒng)流程圖 .32.2.1 數(shù)據(jù)主查詢模塊.42.2.2 管理員管理模塊.52.2 數(shù)據(jù) E-R 圖.63 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì).73.1 系統(tǒng)詳細(xì)模塊 .73.1.1 數(shù)據(jù)主查詢模塊.73.1.2 管理員管理模塊.83.2 系統(tǒng)模塊數(shù)據(jù)表 .103.2.1 用戶數(shù)據(jù)表.103.2.2 論文信息數(shù)

7、據(jù)表.113.2.3 學(xué)院信息數(shù)據(jù)表 .113.2.4 學(xué)員信息數(shù)據(jù)表.123.2.5 出版社信息數(shù)據(jù)表.124 程序測(cè)試程序測(cè)試.134.1 主查詢功能測(cè)試 .134.2 管理員管理功能測(cè)試 .16參考文獻(xiàn)參考文獻(xiàn).21附附 錄(關(guān)鍵部分程序清單)錄(關(guān)鍵部分程序清單).22沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 0 1 需求分析1.1 項(xiàng)目引言項(xiàng)目引言據(jù)統(tǒng)計(jì),在我國(guó)高校中,目前從事科學(xué)技術(shù)研究的大約有 67 萬(wàn)人,占全國(guó)科研力量的 22%,而完成的科研成果和論文發(fā)表占全國(guó)的 70%以上。在 2001 年的國(guó)家“三大獎(jiǎng)”中,國(guó)家自然科學(xué)獎(jiǎng)項(xiàng) 18 項(xiàng)有 9 項(xiàng)是有高校參加的,占 50%;國(guó)家發(fā)明獎(jiǎng) 1

8、2 項(xiàng)中有 8 項(xiàng)是高校參與的;科學(xué)技術(shù)進(jìn)步獎(jiǎng) 137 項(xiàng)中高校參加了 64項(xiàng),高校科研力量的作用和地位再近幾年的地位上升是不言而喻的??梢哉f(shuō)高校已經(jīng)成為我國(guó)基礎(chǔ)研究方面的主力軍、應(yīng)用研究的重要方面軍。因此高校科研論文管理系統(tǒng)研究開發(fā)目標(biāo)是實(shí)現(xiàn)高??蒲袠I(yè)務(wù)的數(shù)字化理,從而提高科研業(yè)務(wù)管理人員以及項(xiàng)目申報(bào)者的工作效率,減少不必要的重復(fù)勞動(dòng),加速信息記錄、查閱以及傳播速度,并且與“數(shù)字校園”中的其他系統(tǒng)相配和共同實(shí)現(xiàn)無(wú)冗余的統(tǒng)一信息管理。作為一個(gè)典型的信息管理系統(tǒng),高??蒲姓撐墓芾硐到y(tǒng)主要包括論文信息管理、教師信息管理、院系信息管理、出版社信息管理以及論文級(jí)別管理等的增刪改查等功能。隨著計(jì)算機(jī)應(yīng)用

9、水平的提高和科研管理的規(guī)范和制度化,建立一套適用于高校的論文管理系統(tǒng)已經(jīng)成為各大高校的迫切要求。 設(shè)計(jì)信息管理系統(tǒng),高校科研論文管理系統(tǒng)主要包括論文信息管理、教師信息管理、院系信息管理、出版社信息管理以及論文級(jí)別管理等的增刪改查等功能。(1)功能的實(shí)現(xiàn)可以使用 oracle 數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的處理;(2)使用 Java 進(jìn)行模塊和界面的設(shè)計(jì)實(shí)現(xiàn);(3)實(shí)現(xiàn) pc 機(jī)端的客戶端設(shè)1.2 功能需求功能需求 通過(guò)資料收集,熟悉高校科研論文管理的基本業(yè)務(wù)需求,完成系統(tǒng)的需求分析和概要設(shè)計(jì),綜合運(yùn)用編程語(yǔ)言、數(shù)據(jù)庫(kù)、軟件工程等軟件開發(fā)相關(guān)知識(shí)和技術(shù),采用 B/S 或 C/S 結(jié)構(gòu),完成一個(gè)高??蒲姓撐墓芾?/p>

10、的設(shè)計(jì)與實(shí)現(xiàn),具體要求沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 1 包括:(1)熟悉高??蒲姓撐墓芾碥浖幕緲I(yè)務(wù);(2)編寫一個(gè)高??蒲姓撐墓芾碥浖?,主要包括論文信息管理、教師信息管理、院系信息管理、出版社信息管理以及論文級(jí)別管理等的增刪改查功能;(3)要求界面美觀友好,便于操作,保證系統(tǒng)的易用性。1.3 環(huán)境需求環(huán)境需求(1)以 eclipse 為編程平臺(tái),Java 作為編程語(yǔ)言。(2)使用 oracle 11g 為數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)庫(kù)。(3)window 7 作為操作系統(tǒng)。沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 2 2 總體設(shè)計(jì)2.1 總體概述總體概述根據(jù)總體設(shè)計(jì)要求,高校論文系統(tǒng)的設(shè)計(jì)主體分為數(shù)據(jù)主查詢和管理員

11、管理兩大模塊,各大模塊下又有相應(yīng)的小模塊。(1)數(shù)據(jù)主查詢模塊 針對(duì)那些不用登錄的用戶,進(jìn)行數(shù)據(jù)查詢的功能。主要分為論文查詢和教師查詢模塊,其中查詢的模塊都可進(jìn)行。(2)管理員管理模塊 針對(duì)進(jìn)行數(shù)據(jù)操作的管理員的操作模塊。首先是管理員登錄模塊,登錄完成后進(jìn)入管理界面模塊,可以進(jìn)行數(shù)據(jù)的總體查詢和數(shù)據(jù)的相關(guān)操作。 高校論文系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖如下圖 2.1 所示。 圖 2.1 系統(tǒng)結(jié)構(gòu)圖2.2 系統(tǒng)流程圖系統(tǒng)流程圖系統(tǒng)有兩大模塊組成,分別為數(shù)據(jù)主查詢模塊和管理員管理模塊,其對(duì)應(yīng)的系統(tǒng)流程圖分別如下所示。高??蒲姓撐墓芾硐到y(tǒng)高??蒲姓撐墓芾硐到y(tǒng) 數(shù)據(jù)主查詢模塊 論文查詢模塊教師查詢模塊 管理員管理模塊

12、 用戶模塊管理查詢模塊管理操作模塊沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 3 2.2.1 數(shù)據(jù)主插詢模塊數(shù)據(jù)主插詢模塊 數(shù)據(jù)主要查詢模塊主要功能是顯示論文和教師信息,可以選擇查詢的方式,其流程圖如下圖 2.2 所示。 圖 2.2 主查詢流程圖 開始 是否查詢論文 選擇查詢數(shù)據(jù) 查詢論文顯示 查詢教師顯示取數(shù)據(jù)庫(kù)數(shù)據(jù)選擇數(shù)據(jù)查詢方式 是否退出 返回主界面 結(jié)束否是否是顯示結(jié)果沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 4 2.2.2 管理員管理模塊管理員管理模塊管理員界面可以進(jìn)行數(shù)據(jù)的總查詢和數(shù)據(jù)修改、增加、刪除操作,可以選擇查詢和操作的種類,具體流程圖如下圖 2.3 所示。 圖 2.3 管理員管理流程圖 開始 管理登

13、錄 管理員界面進(jìn)行數(shù)據(jù)操作 數(shù)據(jù)操作選擇顯示類型 錄入數(shù)據(jù)庫(kù) 取數(shù)據(jù)數(shù)據(jù)顯示是否退出是 返回主界面 結(jié)束否沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 5 2.3 數(shù)據(jù)數(shù)據(jù) E-R 圖圖 數(shù)據(jù)分為管理用戶信息、論文信息、教師信息、院系信息、出版社信息,管理用戶用于登錄修改數(shù)據(jù),為外部實(shí)體。如下圖所示為各個(gè)模塊的屬性和關(guān)系圖。(1)如下圖 2.4 所示為實(shí)體屬性 E-R 圖。 2.4實(shí)體屬性E-R圖 (2)各個(gè)內(nèi)部實(shí)體間的關(guān)系如下圖 2.5所示。 2.5實(shí)體關(guān)系E-R圖沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 6 3 詳細(xì)設(shè)計(jì)3.1 系統(tǒng)詳細(xì)模塊系統(tǒng)詳細(xì)模塊 3.1.1 數(shù)據(jù)主查詢模塊數(shù)據(jù)主查詢模塊(1)論文查詢模塊 在數(shù)

14、據(jù)查詢界面選擇查詢論文,進(jìn)入論文查詢界面。在論文查詢界面可以 進(jìn)行數(shù)據(jù)的全部查詢和選擇類別的關(guān)鍵字查詢,其中選擇類別包括論文編號(hào)、論文名稱、論文作者、論文發(fā)布日期、出版社、類別、級(jí)別等,在輸入類別后,再輸入相關(guān)關(guān)鍵字,即可查詢結(jié)果。具體流程圖如下圖 3.1 所示。 圖 3.1 論文數(shù)據(jù)查詢(2)教師查詢模塊 開始是否條件查詢輸入關(guān)鍵字是查詢?nèi)繑?shù)據(jù) 相關(guān)數(shù)據(jù)查詢否 輸出結(jié)果是否退出否 結(jié)束是沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 7 否是 數(shù)據(jù)查詢界面選擇查詢教師,進(jìn)入教師查詢界面。在論文查詢界面可以 進(jìn)行數(shù)據(jù)的全部查詢和選擇類別的關(guān)鍵字查詢。其中選擇類別包括教師編號(hào)、教師姓名、所在學(xué)院。具體流程圖與

15、3.1 相同。3.1.2 管理員管理模塊管理員管理模塊(1)用戶模塊 用戶模塊包括用戶登錄和用戶注冊(cè),用戶登錄須輸入正確的賬號(hào)和密碼,其中賬號(hào)密碼的信息從數(shù)據(jù)庫(kù)中取出。用戶注冊(cè)包括輸入賬號(hào)、密碼、確認(rèn)密碼、注冊(cè)碼四項(xiàng),其中注冊(cè)碼為保護(hù)措施,密碼和確認(rèn)密碼要求輸入相同。具體流程圖 3.2 相同。 圖 3.2 用戶模塊流程圖(2)管理查詢模塊 開始是否注冊(cè)輸入注冊(cè)信息 信息存入輸入登錄信息 信息驗(yàn)證是否退出否是是否正確否是管理員界面 結(jié)束沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 8 數(shù)據(jù)輸出否是 這里的管理查詢是粗略的查詢,只能查詢?nèi)繑?shù)據(jù),可以選擇類別查詢,包括論文、教師、出版社、學(xué)院,目的是方便管理員進(jìn)行

16、管理時(shí)查詢。 如圖 3.3所示。 圖圖 3.3 管理查詢流程圖管理查詢流程圖(3)管理操作模塊管理員操作是對(duì)錄入數(shù)據(jù)的增加、修改、刪除,數(shù)據(jù)包括論文信息、教師信息、出版社信息、學(xué)院信息。每個(gè)類別對(duì)應(yīng)相應(yīng)的下拉列表選項(xiàng)。對(duì)于數(shù)據(jù)的增加,論文的論文編號(hào)是自動(dòng)生成的。論文的作者和出版社是由數(shù)據(jù)庫(kù)調(diào)用并顯示出來(lái),如果有新的作者或出版社,則需要首先錄入。這樣減少了錄入的差錯(cuò)和方便錄入。對(duì)于論文的修改,首先輸入論文編號(hào),在選擇修改的內(nèi)容,進(jìn)行修改。在刪除時(shí),應(yīng)先輸入論文編號(hào)。對(duì)于教師、出版社、學(xué)院的信息操作與論文類似。如下圖 3.4 所示。 開始查詢類型 數(shù)據(jù)查詢是否退出 管理員界面 結(jié)束沈陽(yáng)航空航天大學(xué)

17、課程設(shè)計(jì)報(bào)告 9 否是 圖圖 3.43.4 管理操作流程圖管理操作流程圖3.2 系統(tǒng)模塊數(shù)據(jù)表系統(tǒng)模塊數(shù)據(jù)表3.2.1 用戶數(shù)據(jù)表用戶數(shù)據(jù)表 管理用戶是外部實(shí)體,用于管理登錄時(shí)的驗(yàn)證使用,包括賬號(hào)和密碼兩個(gè)屬性,數(shù)據(jù)表如下所示。 表表 3.13.1 用戶信息數(shù)據(jù)表用戶信息數(shù)據(jù)表屬性名稱屬性類型 大小是否為主碼說(shuō)明pnochar20是賬號(hào)pwordchar20密碼 開始修改類型和信息類別 信息操作信息輸入 數(shù)據(jù)庫(kù)錄入是否繼續(xù)調(diào)到主頁(yè)面 結(jié)束沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 10 3.2.2 論文信息數(shù)據(jù)表論文信息數(shù)據(jù)表用于存儲(chǔ)錄入數(shù)據(jù)庫(kù)中的論文信息,包括論文的編號(hào)作者等信息,在數(shù)據(jù)庫(kù)錄入時(shí)除主碼外,

18、有幾項(xiàng)也是必填的,如下表 3.2 所示。 表表 3.23.2 論文信息數(shù)據(jù)表論文信息數(shù)據(jù)表屬性名稱屬性類型 大小是否為主碼說(shuō)明lnoint 是論文編號(hào)Lnamechar 20論文名稱writerchar 20論文作者dachar 10發(fā)布日期publishchar 20出版社classchar 10類別levechar 10級(jí)別 3.2.3 教師信息數(shù)據(jù)表教師信息數(shù)據(jù)表 用于記錄教師的信息,教師作為論文的作者,其信息應(yīng)先錄入于數(shù)據(jù)庫(kù)中,具體信息如下表 3.3 所示。 表表 3.33.3 論文信息數(shù)據(jù)表論文信息數(shù)據(jù)表屬性名稱屬性類型 大小是否為主碼說(shuō)明tnochar15是教師編號(hào)tnamecha

19、r20教師姓名tsexchar2性別tagechar2年齡contactchar20聯(lián)系地址collegechar20所在學(xué)院沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 11 3.2.4 學(xué)院信息數(shù)據(jù)表學(xué)院信息數(shù)據(jù)表學(xué)院信息與教師信息有關(guān),一個(gè)教師只在一個(gè)學(xué)院,一個(gè)學(xué)院可以有多個(gè)教師。學(xué)院表用于存放學(xué)院信息。具體信息如下表 3.4 所示。 表表 3.43.4 學(xué)院信息數(shù)據(jù)表學(xué)院信息數(shù)據(jù)表屬性名稱屬性類型 大小是否為主碼說(shuō)明cnochar20是學(xué)院編號(hào)cnamechar20學(xué)院名稱schoolchar20所在學(xué)校 3.2.5 出版社信息數(shù)據(jù)表出版社信息數(shù)據(jù)表出版社信息與論文信息有關(guān),用于存放出版社信息,具體信

20、息如下表 3.5 所示。 表表 3.53.5 學(xué)院信息數(shù)據(jù)表學(xué)院信息數(shù)據(jù)表屬性名稱屬性類型 大小是否為主碼說(shuō)明pnochar20是出版社編號(hào)pnamechar20出版社名稱locationchar20所在地沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 12 4 程序測(cè)試4.1 主查詢功能測(cè)試主查詢功能測(cè)試(1)進(jìn)入到登陸界面,選擇查詢功能進(jìn)入到查詢功能界面。主頁(yè)面如圖 4.1所示,查詢頁(yè)面如圖 4.2 所示。 圖圖 4.14.1 主頁(yè)面主頁(yè)面 圖圖 4.24.2 查詢界面查詢界面(2)選擇所要查詢的內(nèi)容,其查詢論文界面,點(diǎn)擊查詢?nèi)繒r(shí)出現(xiàn)查詢內(nèi)容沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 13 如圖 4.3 所示。當(dāng)選擇關(guān)

21、鍵字查詢時(shí)先選擇下拉列表中的選項(xiàng),加上輸入的關(guān)鍵字,結(jié)果如圖 4.4 所示。查詢教師表的內(nèi)容與論文表相似。 圖圖 4.34.3 查詢?nèi)績(jī)?nèi)容查詢?nèi)績(jī)?nèi)容 圖圖 4.44.4 查詢關(guān)鍵字內(nèi)容查詢關(guān)鍵字內(nèi)容(3)當(dāng)選擇關(guān)鍵字查詢時(shí),未輸入關(guān)鍵字則提示如圖 4.5 所示,當(dāng)查詢無(wú)結(jié)沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 14 果時(shí)出現(xiàn)提示如圖 4.6 所示。 圖圖 4.54.5 查詢值為空查詢值為空 圖圖 4.64.6 查詢無(wú)結(jié)果查詢無(wú)結(jié)果沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 15 4.2 管理員管理功能測(cè)試管理員管理功能測(cè)試(1)用戶登錄用于驗(yàn)證管理員登錄,保證數(shù)據(jù)的安全性,如圖 4.7 所示。當(dāng)賬號(hào)或密碼錯(cuò)誤則提

22、示,如圖 4.8 所示。管理員可以進(jìn)行注冊(cè),密碼確認(rèn)防止密碼輸入錯(cuò)誤,注冊(cè)碼也是保證其安全性其注冊(cè)界面如圖 4.9 所示。 圖圖 4.74.7 管理登錄管理登錄 圖圖 4.84.8 管理登錄管理登錄沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 16 圖圖 4.94.9 注冊(cè)界面注冊(cè)界面(2)當(dāng)用戶驗(yàn)證成功后,進(jìn)入到管理員界面,如圖 4.10 所示。在此界面下,既可以進(jìn)行數(shù)據(jù)的修改也可以進(jìn)行數(shù)據(jù)的總體查詢,其中查詢可以查詢論文、教師、出版社、學(xué)院的信息,舉例查詢論文顯示如圖 4.11 所示。 圖圖 4.104.10 管理員界面管理員界面沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 17 圖圖 4.114.11 查詢論文查詢論文

23、(3)在查詢完相應(yīng)的信息后,可以進(jìn)行數(shù)據(jù)操作,包括增加、修改、刪除,數(shù)據(jù)包括論文、教師、出版社、學(xué)院,增加論文如下圖 4.12 所示,論文編號(hào)為自動(dòng)生成,學(xué)院和作者信息由數(shù)據(jù)庫(kù)中取出,當(dāng)帶*號(hào)未填則提醒如圖 4.13 所示。添加教師如圖 4.14 所示,其中學(xué)院信息也是從數(shù)據(jù)庫(kù)中取出。添加學(xué)院和出版社與論文類似。 圖圖 4.124.12 添加論文添加論文沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 18 圖圖 4.134.13 提示提示 圖圖 4.144.14 添加教師添加教師 (4)論文修改和刪除界面,首先輸入論文編號(hào),在選擇修改內(nèi)容,并且輸入修改的內(nèi)容。 當(dāng)刪除時(shí),只需要輸入其編號(hào)即可,如圖 4.15 和

24、圖 4.16 所示。教師、出版社、學(xué)院的操作與論文相同。沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 19 圖圖 4.154.15 修改論文修改論文 圖圖 4.164.16 刪除論文刪除論文 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 20 參考文獻(xiàn)1 耿詳義,張躍平. Java 2 實(shí)用教程. 北京:清華大學(xué)出版社,20042 張利國(guó).Java 實(shí)用教程案例.北京:清華大學(xué)出版社,20033 周曉聰.面向?qū)ο蟪绦蛟O(shè)計(jì)與 Java 語(yǔ)言.北京:機(jī)械工業(yè)出版社,20044 李尊朝.Java 語(yǔ)言程序設(shè)計(jì).北京:中國(guó)鐵道出版社,20045 王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第四版)M.北京:高等教育出版社,20066 嚴(yán)蔚敏.數(shù)據(jù)結(jié)構(gòu)(C

25、 語(yǔ)言版)M.北京:清華大學(xué)出版社,2011沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 21 附 錄(關(guān)鍵部分程序清單)1.主界面程序主界面程序public class Mainpage extends JFrame private JLabel Frist, Second; / 主頁(yè)面的private JButton Regedit, Seek, Login, no;public ImageIcon img; public Mainpage() img = new ImageIcon(E:/temp/Winter.JPG); JPanel panel = new JPanel() public void

26、paintComponent(Graphics g) g.drawImage(img.getImage(),0,0,null); super.paintComponent(g); ; panel.setOpaque(false); setContentPane( panel ); final Container c = this.getContentPane(); / 得到內(nèi)容面板 c.setLayout(null); / 自己調(diào)布局Frist = new JLabel(高校論文管理系統(tǒng));Frist.setFont(new Font(宋體,Font.BOLD, 24);Frist.setBo

27、unds(90, 0, 200, 50);c.add(Frist);Second = new JLabel(選擇您的選項(xiàng));Second.setBounds(140, 50, 200, 50);c.add(Second);Seek = new JButton(查找);/ 添加按鈕 okSeek.setBounds(130, 120, 100, 30);c.add(Seek);Login = new JButton(管理);Login.setBounds(130, 170, 100, 30);c.add(Login);no = new JButton(退出);/ 添加按鈕 nono.setBou

28、nds(130, 220, 100, 30);沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 22 c.add(no); / 匿名內(nèi)部類來(lái)實(shí)現(xiàn)事件監(jiān)聽no.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) / 將標(biāo)簽清空/ TODO 自動(dòng)生成的方法存根Mainpage.this.dispose(););Login.addActionListener(new ActionListener() / 事件監(jiān)聽public void actionPerformed(ActionEvent e

29、) / 用于將文本內(nèi)容寫入標(biāo)簽中 / 單擊后執(zhí)行的操作Ml cai = new Ml();cai.setVisible(true);cai.setBounds(380, 200, 400, 300);Mainpage.this.dispose(););Seek.addActionListener(new ActionListener() / 事件監(jiān)聽public void actionPerformed(ActionEvent e) / 用于將文本內(nèi)容寫入標(biāo)簽中 / 單擊后執(zhí)行的操作Seek cai = new Seek();cai.setVisible(true);cai.setBounds

30、(380, 200, 400, 300);Mainpage.this.dispose(););public static void main(String args) Mainpage t = new Mainpage();t.setTitle(高校論文管理系統(tǒng));t.setVisible(true); / 顯示出來(lái)t.setBounds(380, 200, 400, 300);t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); / 結(jié)束程序2.主查詢查詢監(jiān)聽主查詢查詢監(jiān)聽button.addActionListener(new ActionLi

31、stener() 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 23 public void actionPerformed(ActionEvent arg0) Seekpage1.this.dispose();Seekpage1 c = new Seekpage1();c.setVisible(true);c.setLocationRelativeTo(null);c.setSize(700, 400);Object Name = 論文編號(hào), 論文名稱, 作者, 發(fā)布日期, 出版社, 類別, 級(jí)別 ;Object Data = new Object407;JTable table = new JTable(

32、Data, Name);/ 表格對(duì)象 table 的數(shù)據(jù)來(lái)源是 myModel 對(duì)象table.setPreferredScrollableViewportSize(new Dimension(680, 200);/ 表格的顯示尺寸JScrollPane scrollPane = new JScrollPane(table);String content = chename.getText().trim();String kind = (String) comboBox.getSelectedItem();if (content.length() != 0) System.out.printl

33、n(content);/ 將帶滾動(dòng)條的面板添加入窗口中g(shù)etContentPane().add(scrollPane, BorderLayout.CENTER);List l = new ArrayList();if (kind = 學(xué)院) System.out.println(content);l = checku3(content);else if (kind = 學(xué)校) System.out.println(content);l = checku4(content);elsel = checku2(content, kind);if (j = 0) JOptionPane.showMes

34、sageDialog(Seekpage1.this, 查詢無(wú)結(jié)果!); else Thesis u = new Thesis();for (int i = 0; i j; i+) 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 24 u = (Thesis) l.get(i);Datai0 =u.getLno();Datai1 = u.getLname();Datai2 = u.getWriter();Datai3 = u.getDate();Datai4 = u.getPublish();Datai5 = u.getClas();Datai6 = u.getLevel();scrollPane = new J

35、ScrollPane(table);scrollPane.setBounds(0, 0, 680, 150);c.add(scrollPane);Object n1 = 統(tǒng)計(jì) ;Object m1 = new Object11;JTable t1 = new JTable(m1, n1);/ 表格對(duì)象 table 的數(shù)據(jù)來(lái)源是 myModel 對(duì)象t1.setPreferredScrollableViewportSize(new Dimension(120, 20);/ 表格的顯示尺寸m100=j;JScrollPane s1 = new JScrollPane(t1);s1 = new JS

36、crollPane(t1);s1.setBounds(560,150, 120, 40);c.add(s1);/*JOptionPane.showMessageDialog(Seekpage1.this, 總共有有+j+條記錄);*/ else JOptionPane.showMessageDialog(Seekpage1.this, 輸入值不能為空,請(qǐng)重新填寫!););3.調(diào)用數(shù)據(jù)庫(kù)查詢調(diào)用數(shù)據(jù)庫(kù)查詢public List checku1() List l = new ArrayList();String driverName = oracle.jdbc.driver.OracleDrive

37、r;沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 25 String url = jdbc:oracle:thin:127.0.0.1:1521:orcl; / test 為數(shù)據(jù)庫(kù)名稱,1521 為連接數(shù)據(jù)庫(kù)的默認(rèn)端口String user = scott; / aa 為用戶名String password = tiger; / 123 為密碼PreparedStatement pstmt = null;ResultSet rs = null;/ 數(shù)據(jù)庫(kù)連接對(duì)象Connection conn = null;try / 反射 Oracle 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序類Class.forName(driverName);/

38、獲取數(shù)據(jù)庫(kù)連接conn = DriverManager.getConnection(url, user, password);/ 輸出數(shù)據(jù)庫(kù)連接System.out.println(conn);/ 定制 sql 命令String sql = select thesis.*,lod.explain from thesis,lod where thesis.leve=lod.lname;/ 創(chuàng)建該連接下的 PreparedStatement 對(duì)象pstmt = conn.prepareStatement(sql);rs = pstmt.executeQuery();/ VectorVector d

39、ata = new VectorVector();while (rs.next() Thesis u = new Thesis();u.setLno(rs.getInt(lno);u.setLname(rs.getString(lname);u.setWriter(rs.getString(writer);u.setDate(rs.getString(da);沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 26 u.setPublish(rs.getString(publish);u.setClas(rs.getString(class);u.setLevel(rs.getString(explain);l.a

40、dd(u);j+; catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (rs != null) rs.close();if (pstmt != null) pstmt.close();if (conn != null) conn.close(); catch (SQLException e) e.printStackTrace();return l;4.數(shù)據(jù)庫(kù)插入數(shù)據(jù)庫(kù)插入public int DBcon(String

41、pno, String pword) / 設(shè)定數(shù)據(jù)庫(kù)驅(qū)動(dòng),數(shù)據(jù)庫(kù)連接地址、端口、名稱,用戶名,密碼String driverName = oracle.jdbc.driver.OracleDriver;String url = jdbc:oracle:thin:127.0.0.1:1521:orcl; / test 為數(shù)據(jù)庫(kù)名稱,1521 為連接數(shù)據(jù)庫(kù)的默認(rèn)端口沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 27 String user = scott; / aa 為用戶名String password = tiger; / 123 為密碼int k = 0;PreparedStatement pstmt =

42、null;ResultSet rs = null;/ 數(shù)據(jù)庫(kù)連接對(duì)象Connection conn = null;try / 反射 Oracle 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序類Class.forName(driverName);/ 獲取數(shù)據(jù)庫(kù)連接conn = DriverManager.getConnection(url, user, password);/ 輸出數(shù)據(jù)庫(kù)連接/ 定制 sql 命令String sql = INSERT INTO users(pno,pword) values(?,?);/ 創(chuàng)建該連接下的 PreparedStatement 對(duì)象pstmt = conn.prepareStat

43、ement(sql);/ 傳遞第一個(gè)參數(shù)值 root,代替第一個(gè)問(wèn)號(hào)pstmt.setString(1, pno);pstmt.setString(2, pword);/ 執(zhí)行查詢語(yǔ)句,將數(shù)據(jù)保存到 ResultSet 對(duì)象中int i = pstmt.executeUpdate();if (i != 0) k = 1;沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 28 catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (rs != n

44、ull) rs.close();if (pstmt != null) pstmt.close();if (conn != null) conn.close(); catch (SQLException e) e.printStackTrace();return k;5.數(shù)據(jù)庫(kù)修改數(shù)據(jù)數(shù)據(jù)庫(kù)修改數(shù)據(jù)public int Update(String lno, String content, String kind) / 設(shè)定數(shù)據(jù)庫(kù)驅(qū)動(dòng),數(shù)據(jù)庫(kù)連接地址、端口、名稱,用戶名,密碼String driverName = oracle.jdbc.driver.OracleDriver;String url

45、 = jdbc:oracle:thin:127.0.0.1:1521:orcl; / test 為數(shù)據(jù)庫(kù)名稱,1521 為連接數(shù)據(jù)庫(kù)的默認(rèn)端口String user = scott; / aa 為用戶名String password = tiger; / 123 為密碼int k = 0;PreparedStatement pstmt = null;ResultSet rs = null;沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 29 / 數(shù)據(jù)庫(kù)連接對(duì)象Connection conn = null;try / 反射 Oracle 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序類Class.forName(driverName);/ 獲取

46、數(shù)據(jù)庫(kù)連接conn = DriverManager.getConnection(url, user, password);/ 輸出數(shù)據(jù)庫(kù)連接/ 定制 sql 命令if (kind = 論文名稱) String sql = update thesis set lname= + content + where lno= + lno + ;pstmt = conn.prepareStatement(sql);/ 創(chuàng)建該連接下的 PreparedStatement 對(duì)象else if (kind = 作者) String sql = update thesis set writer= + conten

47、t + where lno= + lno + ;pstmt = conn.prepareStatement(sql); else if (kind = 發(fā)布日期) String sql = update thesis set da= + content + where lno= + lno + ;pstmt = conn.prepareStatement(sql); else if (kind = 出版社) String sql = update thesis set publish= + content + where lno= + lno + ;pstmt = conn.prepareStatement(sql); else if (kind = 類別) String sql = update thesis set class= + content + where lno= + lno + ;沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 30 pstmt = conn.prepareS

溫馨提示

  • 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論