




已閱讀5頁(yè),還剩55頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
jsp畢業(yè)選題系統(tǒng).pdf.pdf 免費(fèi)下載
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢 業(yè) 設(shè) 計(jì)(論文) 論文題目: JSP實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 學(xué)生姓名: 學(xué) 號(hào): 專(zhuān) 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 方 向: web數(shù)據(jù)庫(kù)應(yīng)用 指導(dǎo)教師: 2006 年 5 月 8 日 咸寧學(xué)院學(xué)位論文聲明 本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果,除文中已經(jīng)注明引用的內(nèi)容外,本論文不含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫(xiě)過(guò)的作品成果。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體均已在文中以明確方式標(biāo)明,本人完全意識(shí)到本聲明的法律后果由本人承擔(dān)。 學(xué)位論文作者簽名: 日 期: 2006 年 5 月 8 日 學(xué)位論文版權(quán)使用授權(quán)書(shū) 本學(xué)位論文作者完全了解學(xué)校有關(guān)保 障、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向有關(guān)學(xué)位論文管理部門(mén)或機(jī)構(gòu)送 交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)省級(jí)優(yōu)秀學(xué) 士學(xué)位論文評(píng)選機(jī)構(gòu)將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行 檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。 本學(xué)位論文屬于 1、 保密 ,在_年解密后適用本授權(quán)書(shū)。 2、 不保密 。 (請(qǐng)?jiān)谝陨舷鄳?yīng)方框內(nèi)打“”) 作者簽名: 2006 年 5 月 20 日 導(dǎo)師簽名: 2006 年 5 月 20 日 目 錄 摘要 .1 Abstract .2 第1 章 前言 . .3 1.1 網(wǎng)上選題系統(tǒng)發(fā)展的前景 .3 1.2 B/S 模式結(jié)構(gòu)簡(jiǎn)介. .3 第 2 章 系統(tǒng)分析與設(shè)計(jì) . .5 2.1 系統(tǒng)需求分析 . .5 2.2 系統(tǒng)設(shè)計(jì)目標(biāo) . .5 2.3 系統(tǒng)開(kāi)發(fā)工具 . .5 2.4 相關(guān)理論知識(shí) . .6 第 3 章 選題系統(tǒng)的實(shí)現(xiàn). . 10 3.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì) . 10 3.2 學(xué)生選題子模塊具體實(shí)現(xiàn) . 11 3.3 教師課題申報(bào)子模塊具體實(shí)現(xiàn) . 14 3.4 管理員管理子模塊具體實(shí)現(xiàn) . 16 3.5 數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn) . 18 第 4 章 關(guān)鍵技術(shù)的具體實(shí)現(xiàn) . 22 4.1 JSP 的內(nèi)建對(duì)象 . . 22 4.2 分頁(yè)的實(shí)現(xiàn). . 23 4.3 文件上傳的實(shí)現(xiàn). . 24 第 5 章 系統(tǒng)的測(cè)試與維護(hù) . 27 5.1 常見(jiàn)的問(wèn)題和解決方法 . 28 5.2 黑盒測(cè)試與白盒測(cè)試 . 29 5.3 系統(tǒng)功能擴(kuò)展. . 30 總結(jié). 31 參考文獻(xiàn). . 32 課題任務(wù)書(shū). . 33 外文翻譯. . 35 文獻(xiàn)綜述. . 43 開(kāi)題報(bào)告. . 47 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) JSP實(shí)現(xiàn)畢業(yè)論文設(shè)計(jì)選題系統(tǒng) 摘 要 針對(duì)畢業(yè)設(shè)計(jì)選題的教學(xué)需求,本文 采用 JSP 語(yǔ) 言 和 SQL Server 2000 數(shù) 據(jù)庫(kù)的開(kāi)發(fā)技術(shù),設(shè)計(jì)了基于 B/S 的畢業(yè)論 文設(shè)計(jì)選題系統(tǒng)應(yīng)用軟件。該系統(tǒng)界面美觀、使用方便、運(yùn)行可靠、實(shí)現(xiàn)了動(dòng)態(tài)數(shù)據(jù)庫(kù)管理。從而減輕教務(wù)人員的工作量,便于師生之間的網(wǎng)上交流,對(duì)提高畢業(yè)設(shè)計(jì)質(zhì)量具有重要的作用。 關(guān)鍵詞 網(wǎng)上選題系統(tǒng) JSP SQL Server 2000 B/S 第 1 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) System of project selection programming on JSP Abstract: In view of graduation project selected topic teaching demand,This article used the JSP language and SQL Server 2000 databases development technologies, Has designed based on B/S graduation thesis design selected topic system application software, This system interface artistic, the easy to operate, the run was reliable, has implemented the dynamic database management. Thus reduces the educational administration personnels work load and enhance the communication of teacher and students online. To improves the graduation project quality to have the vital role. . Keywords: Online Selection Programming JSP SQL Server B/S 第 2 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 1 前言 1.1 網(wǎng)上選題系統(tǒng)發(fā)展的前景 隨著全球信息化技術(shù)的興起, 特別是 Internet的日益普及, 我國(guó)各大中專(zhuān)院校也加快了信息化進(jìn)程,并且都建立了自己的校園網(wǎng)。這為我們網(wǎng)絡(luò)現(xiàn)代化教育提供了必備的物質(zhì)基礎(chǔ)。同時(shí),伴隨著素質(zhì)教育的不斷推進(jìn), 畢業(yè)設(shè)計(jì) ( 論文) 已成為檢驗(yàn)學(xué)生學(xué)習(xí)成果的重要環(huán)節(jié), 畢業(yè)設(shè)計(jì) (論文)的水平也成為學(xué)校教學(xué)水平評(píng)估的一項(xiàng)重要內(nèi)容。 在技術(shù)和需求的推動(dòng)下,各大院校都發(fā)現(xiàn)以前以原始手工報(bào)送的選題方式,暴露出了很多的缺點(diǎn)與不足。比如,在做畢業(yè)設(shè)計(jì)(論文)之前,學(xué)生首先要做的工作就是在系提供的眾多畢業(yè)設(shè)計(jì)(論文)題目中選出適合自己的題目。目前的選擇過(guò)程通常是:“系以紙張形式將題目分發(fā)下去學(xué)生選擇系收集、統(tǒng)計(jì)系篩選(如一個(gè)題目最多允許 4 人選擇,則必須去掉多余的人)在一個(gè)題目中被去掉的學(xué)生再次選擇系再次收集、統(tǒng)計(jì)系再次協(xié)調(diào)”。因而造成一個(gè)循環(huán)、低效的尷尬局面,使得教學(xué)管理工作效率低下。 基于以上原 因,本文提 出了一種畢 業(yè)設(shè)計(jì)(論 文)網(wǎng)上選 題系統(tǒng),它 能很好地解 決以上問(wèn)題 。它改變了以往原始手工選題的方式,而是采用以個(gè)人為依托的現(xiàn)代化的網(wǎng)上選題方式,極大地便捷了學(xué)生,也方便了教務(wù)人員,顯著地提高了工作效率1。 1.2 B/S 模式結(jié)構(gòu)的簡(jiǎn)介 B/S結(jié)構(gòu) , 即 Browser/Server(瀏覽器 /服務(wù)器 )結(jié)構(gòu) ,是隨著 Internet技術(shù) 的 興起,對(duì) C/S結(jié)構(gòu)的 一種變化或者改進(jìn)的結(jié)構(gòu)。 在這種結(jié)構(gòu)下, 用戶界面完全通過(guò)WWW瀏覽器實(shí)現(xiàn), 一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂 3-tier結(jié)構(gòu)。B/S結(jié)構(gòu),主要是利用了不斷成熟的WWW瀏覽 器技術(shù),結(jié)合瀏覽器的多種Script語(yǔ)言(VBScript、 JavaScript)和ActiveX技術(shù), 用通用瀏覽器就實(shí)現(xiàn)了原來(lái)需要復(fù)雜專(zhuān)用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開(kāi)發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。隨著Windows 98/Windows 2000 將瀏 覽器技術(shù)植入操作系統(tǒng)內(nèi)部,這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。顯然B/S結(jié)構(gòu)應(yīng)用程序相對(duì)于傳統(tǒng)的C/S結(jié)構(gòu) 應(yīng)用程序?qū)⑹蔷薮蟮倪M(jìn)步 。2目前 Internet 應(yīng)用的 B/S(Browser /Server)結(jié)構(gòu) 已經(jīng)越來(lái)越多的應(yīng)用在 Intranet 的企 事 業(yè)單位內(nèi)部,諸如 OA,CRM,ERP,CMS 等大規(guī)模的集成應(yīng)用系統(tǒng),由于這種結(jié)構(gòu)的可維護(hù)性強(qiáng)、開(kāi)發(fā)成本低、及技術(shù)的不斷發(fā)展,B/S 結(jié)構(gòu)更已成為了當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。 但是 B/S 結(jié) 構(gòu)應(yīng)用系統(tǒng)還是存在著諸多問(wèn)題,比如界面風(fēng)格凌亂、操作不便、流程煩瑣等,如果能減少這些問(wèn)題, B/S 結(jié) 構(gòu) 應(yīng)用系統(tǒng)將一定能更為用戶所接受。 作者從事了多年的軟件 UI 工作, 在B /S系統(tǒng)的優(yōu)化方面也積累了些許經(jīng)驗(yàn),也許能為大家?guī)?lái)些幫助。 第 3 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 1.2.1 統(tǒng)一界面相信很多開(kāi)發(fā)人員都有這樣的經(jīng)驗(yàn),軟件項(xiàng)目驗(yàn)收到最后,往往用戶提出最多的問(wèn)題并不是開(kāi)發(fā)人員擅長(zhǎng)的數(shù)據(jù)處理、 事務(wù)邏輯等問(wèn)題, 而是系統(tǒng)的前端顯示, 例如: 表格的樣式、 數(shù)據(jù)的樣式、腳本錯(cuò)誤、操作流程簡(jiǎn)化等,這些用戶認(rèn)為很簡(jiǎn)單的問(wèn)題卻經(jīng)常需要開(kāi)發(fā)人員花費(fèi)項(xiàng)目近 1/3 的 時(shí)間來(lái)完成。 規(guī)范區(qū)代碼 很多應(yīng)用系統(tǒng)的前端 Head 區(qū)過(guò)分凌亂 有些甚至沒(méi)有, 導(dǎo)致有時(shí)網(wǎng)頁(yè)會(huì)顯示為亂碼, 所以在系統(tǒng)開(kāi)發(fā)初期一定要規(guī)范 Head 區(qū)代碼,統(tǒng)一書(shū)寫(xiě)。 統(tǒng)一腳本及 CSS 文件 由于系統(tǒng)開(kāi)發(fā)人員習(xí)慣于從其它地方直接拷貝原代碼,這就導(dǎo)致腳本文件過(guò)于繁多,增加變量或函數(shù)命名重復(fù)的可能, 而且經(jīng)常會(huì)看到在 Head 區(qū)會(huì) 引用 4, 5個(gè) JS 文件或 是 CSS 文件, 事 實(shí)是這些 都是沒(méi)有必要的。 對(duì)于 CSS 文件應(yīng)該準(zhǔn)備好一份使用說(shuō)明,這樣可以避免開(kāi)發(fā)人員對(duì)一個(gè)標(biāo)簽進(jìn)行多次定義。 簡(jiǎn)化 HTML 代碼 對(duì) body 區(qū)域的樣式控制最好在 CSS 中定義為默認(rèn)樣式。 表格的嵌套盡量不要操作兩層,否則不利于閱讀及今后的修改。 對(duì)其中的表格、表單、按鈕、鏈接、菜單等的樣式統(tǒng)一應(yīng)用 CSS 定義 ,這樣可以使開(kāi)發(fā)人員更易于控制。 對(duì)于表單數(shù)據(jù)檢驗(yàn)最好通過(guò)初始化腳本完成,而不要為每一個(gè)頁(yè)面寫(xiě)入不同的腳本。 盡量自己來(lái)開(kāi)發(fā)腳本控件,而不要直接粘貼別人的代碼,一方面他們的代碼不易控制,另一方面由于編寫(xiě)的人不同書(shū)寫(xiě)格式、規(guī)范都不同,這就會(huì)增加出錯(cuò)的可能。 1.2.2 操作方便由于應(yīng)用系統(tǒng)需要處理大量的信息,這就需要用戶做頻繁的重復(fù)錄入工作,如果能提供更多的快捷鍵,及盡量讓用戶少用鼠標(biāo),則一定可以使軟件更受用戶歡迎。重定義 Tab順序,不要使用系統(tǒng)默認(rèn)順序。如果可以,為每個(gè)表單加入回車(chē)跳轉(zhuǎn)至下一個(gè)表單的腳本。每次打開(kāi)新窗口時(shí)使新窗口得到焦點(diǎn)。 1.2.3 簡(jiǎn)化流程由于 B/S 結(jié) 構(gòu)的應(yīng)用系統(tǒng)幾乎所有的數(shù)據(jù)處理都由服務(wù)器完成,所以經(jīng)常使得用戶為了查看一條記錄,需要打開(kāi) 3、4 次的窗口。 當(dāng)每條信息的數(shù)據(jù)量不會(huì)很大時(shí)最好在讀取每頁(yè)記錄時(shí)將記錄的全部信息一起讀出,然后由前端界面的隱藏層來(lái)顯示。對(duì)于記錄條目不是很多的列表,分頁(yè)最好利用腳本來(lái)實(shí)現(xiàn)。對(duì)于不必要的交互行為最好使用腳本來(lái)實(shí)現(xiàn)。這樣可以簡(jiǎn)化用戶在使用過(guò)程的操作流程。 還有很 多的 方法可 以 對(duì) B/S 結(jié) 構(gòu)的應(yīng) 用系 統(tǒng)進(jìn)行 優(yōu)化 ,這里 就不 再一一 詳述 了,隨 著Flash MX2004 的發(fā)布,F(xiàn)/S(SAFl ashPlayer/Server)結(jié)構(gòu)也 將會(huì)是一種全新的結(jié)構(gòu)體系,總之對(duì)于應(yīng)用系統(tǒng)開(kāi)發(fā),前期準(zhǔn)備越充份,后期收尾就會(huì)越順利。 第 4 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 2 系統(tǒng)分析與設(shè)計(jì) 2.1 系統(tǒng)需求分析 本系統(tǒng)的目的是為了讓學(xué)生能隨時(shí)隨地通過(guò)網(wǎng)絡(luò)進(jìn)行選題,為此系統(tǒng)提供了客戶端選題子模塊和服務(wù)端管理子模塊兩大主要組成部分??蛻舳诉x題子模塊主要提供了學(xué)生登錄、學(xué)生選題、學(xué)生查詢。服務(wù)端管理子模塊主要提供了管理員登錄、學(xué)生信息維護(hù)、論文信息維護(hù)。所以管理層對(duì)幾乎所有的數(shù)據(jù)庫(kù)表都有訪問(wèn)權(quán)限3。 數(shù)據(jù)存儲(chǔ)層 業(yè)務(wù)處理層用戶界面層 Jvjfdsafasfdsa JavaBeansfkdkfjdjfJavaBeans 在線選題 操作界面 數(shù)據(jù)庫(kù) 圖 2.1 三層架構(gòu)工作原理圖 2.2 系統(tǒng)設(shè)計(jì)目標(biāo) 本系統(tǒng)首先要實(shí)現(xiàn)動(dòng)態(tài)性和交互性。所謂的動(dòng)態(tài)性就是能動(dòng)態(tài)更新內(nèi)容,如更新學(xué)生信息、論文信息、管理員信息等。這要求與數(shù)據(jù)庫(kù)有良好的連接;交互性則要求教師和學(xué)生能實(shí)時(shí)地進(jìn)行信息交流。學(xué)生在使用系統(tǒng)時(shí),實(shí)現(xiàn)系統(tǒng)操作方便和操作界面美觀的特點(diǎn)。實(shí)現(xiàn)系統(tǒng)的安全性和可靠性,避免他人進(jìn)入破壞數(shù)據(jù)庫(kù)信息。 2.3 系統(tǒng)的開(kāi)發(fā)工具 下表是對(duì) JSP、ASP、PHP 動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)的比較: 表 2.1 JSP、ASP、PHP 動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)的比較 技術(shù)比較 JSP ASP PHP 運(yùn)行速度 快 較快 較快 運(yùn)行耗損 較小 較大 較大 難易程度 容易 容易 容易 運(yùn)行平臺(tái) 絕大部份 Windows Windows/unix 擴(kuò)展性 好 較好 較差 安全性 好 較差 好 函數(shù)支持 多 較多 多 第 5 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 數(shù)據(jù)庫(kù)支持 多 多 多 廠商支持 多 小 較多 對(duì) XML 的支持 支持 不支持 支持 對(duì)組件的支持 支持 支持 不支持 應(yīng)用程度 較廣 較廣 較廣 通過(guò)上表的比較本系統(tǒng)采用 JSP 。 并且使用 JBuilderX (集 成開(kāi)發(fā)工具)作為開(kāi)發(fā)環(huán)境,因?yàn)镴BuilderX 中集成有 JDK1.4 和 Tomcat4.0,數(shù)據(jù)庫(kù)采用 SQL Server 2000。 2.4 相關(guān)理論知識(shí) 2.4.1 軟件工程理論 軟件工程是一門(mén)旨在開(kāi)發(fā)滿足用戶需求、及時(shí)交付、不超過(guò)預(yù)算和無(wú)故障的軟件的學(xué)科,它以質(zhì)量保證為基礎(chǔ),包括過(guò)程、方法和工具三個(gè)要素。軟件工程涵蓋了軟件生存周期的所有階段,包括計(jì)劃、分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、集成、交付、維護(hù)等4。 軟件工程的目標(biāo)是提高軟件的質(zhì)量與生產(chǎn)率,最終實(shí)現(xiàn)軟件的工業(yè)化生產(chǎn)。質(zhì)量是軟件需求方最關(guān)心的問(wèn)題,用戶即使不圖物美價(jià)廉,也要求個(gè)貨真價(jià)實(shí)。生產(chǎn)率是軟件供應(yīng)方最關(guān)心的問(wèn)題,老板和員工都想用更少的時(shí)間掙更多的錢(qián)。質(zhì)量與生產(chǎn)率之間有著內(nèi)在的聯(lián)系,高生產(chǎn)率必須以質(zhì)量合格為前提。如果質(zhì)量不合格,對(duì)供需雙方都是壞事情。從短期效益看,追求高質(zhì)量會(huì)延長(zhǎng)軟件開(kāi)發(fā)時(shí)間并且增大費(fèi)用,似乎降低了生產(chǎn)率。從長(zhǎng)期效益看,高質(zhì)量將保證軟件開(kāi)發(fā)的全過(guò)程更加規(guī)范流暢,大大降低了軟件的維護(hù)代價(jià),實(shí)質(zhì)上是提高了生產(chǎn)率,同時(shí)可獲得很好的信譽(yù)。質(zhì)量與生產(chǎn)率之間不存在根本的對(duì)立,好的軟件工程方法可以同時(shí)提高質(zhì)量與生產(chǎn)率。 軟件的質(zhì)量因素很多,如正確性,性能、可靠性、容錯(cuò)性、易用性、靈活性、可擴(kuò)充性、可理解性、可維護(hù)性等等。有些因素相互重疊,有些則相抵觸,真要提高質(zhì)量可不容易?。?軟件工程的主要環(huán)節(jié)有:人員管理、項(xiàng)目管理、可行性與需求分析、系統(tǒng)設(shè)計(jì)、程序設(shè)計(jì)、測(cè)試、維護(hù)等,如圖下圖所示: 可行性與 需求分析 系統(tǒng) 設(shè)計(jì) 程序 設(shè)計(jì) 測(cè) 試 維 護(hù) 項(xiàng)目管理 人員管理 圖 2.2 軟件工程的主要環(huán)節(jié) 軟件開(kāi)發(fā)模型是對(duì)軟件過(guò)程的建模, 常見(jiàn)的開(kāi)發(fā)模型包括瀑布模型、 快速原型模型、 增量模型、第 6 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 螺旋模型等,每個(gè)軟件開(kāi)發(fā)組織應(yīng)該選擇適合于該組織的軟件開(kāi)發(fā)模型。 維 護(hù) 測(cè) 試 程序 設(shè)計(jì) 系統(tǒng) 設(shè)計(jì) 可行性與 需求分析 時(shí)間 可行性與 需求分析 系統(tǒng) 設(shè)計(jì) 程序 設(shè)計(jì) 可行性與 需求分析 系統(tǒng) 設(shè)計(jì) 程序 設(shè)計(jì) 測(cè) 試 維 護(hù) 維 護(hù) 測(cè) 試 進(jìn)度 圖 2.3 軟件工程的漸增式模型 最早出現(xiàn)的軟件工程模型是線性模型 (又稱瀑布模型) 。 線性模型太理想化, 太單純, 已不再適合現(xiàn)代的軟件開(kāi)發(fā)模式,幾乎被業(yè)界拋棄。偶而被人提起,都屬于被貶對(duì)象,未被留一絲惋惜。但我們應(yīng)該認(rèn)識(shí)到, “線性 ”是人們最容易掌握并能熟練應(yīng)用的思想方法。 當(dāng)人們碰到一個(gè)復(fù)雜的 “非線性 ”問(wèn)題時(shí), 總是千方百計(jì)地將其分解或轉(zhuǎn)化為一系列簡(jiǎn)單的線性問(wèn)題, 然后逐個(gè)解決。 一個(gè)軟件 系統(tǒng)的整體可能是復(fù)雜的, 而單個(gè)子程序總是簡(jiǎn)單的, 可以用線性的方式來(lái)實(shí)現(xiàn), 否則干活就太累了。線性是一種簡(jiǎn)潔,簡(jiǎn)潔就是美。當(dāng)我們領(lǐng)會(huì)了線性的精神,就不要再呆板地套用線性模型的外表,而應(yīng)該用活它。 例如漸增式模型實(shí)質(zhì)就是分段的線性模型, 如圖 1.3 所示。 螺旋模型則是接連的彎曲了的線性模型。在其它模型中都能夠找到線性模型的影子。 套用固定的模型不是程序員的聰明之舉。比如“程序設(shè)計(jì)”與“測(cè)試”之間的關(guān)系,習(xí)慣上總以為程序設(shè)計(jì)在先, 測(cè)試在后, 如圖 2.4( a) 所示。 而對(duì)于一些復(fù)雜的程序, 將測(cè)試分為同步測(cè)試與總測(cè)試更有效,如圖 2.4(b)所示。 程序設(shè)計(jì) 同步測(cè)試 總測(cè)試 測(cè)試 程序設(shè)計(jì) 圖 2.4 軟件工程的測(cè)試 (b) 測(cè)試分為 同步測(cè)試與總測(cè)(a) 程序設(shè)計(jì) 在行測(cè)試在第 7 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 不論是什 么軟件工程模型, 總是少不了圖 2.4 中 的各個(gè)環(huán)節(jié)。 本設(shè)計(jì)順序講述了可行性與需求分析、系統(tǒng)設(shè)計(jì)、程序設(shè)計(jì)、測(cè)試,以及維護(hù)與再生工程。 實(shí)際上, 不管有沒(méi)有軟件工程, 不管是否存在一個(gè)萬(wàn)能的框架系統(tǒng), 我們的應(yīng)用系統(tǒng)還是要做,各種各樣的軟件還是要開(kāi)發(fā)。說(shuō)到底,軟件系統(tǒng)是因?yàn)橛行枨蟛糯嬖诘?。有了?yīng)用域才有了軟件存在的意義。很多時(shí)候,我們可以看到國(guó)外有各種各樣的軟件和創(chuàng)新,而我們沒(méi)有,我們更多的是模仿和一些重復(fù)的功能相近的軟件的原因就是因?yàn)槲覀儧](méi)有這方面的需求, 這也正解釋了為什么 ERP系統(tǒng)能在國(guó)外開(kāi)展的很好,而在國(guó)內(nèi)失敗多于成功的原因。一方面當(dāng)然是因?yàn)槲覀兊钠髽I(yè)按照市場(chǎng)經(jīng)濟(jì)發(fā)展的時(shí)間還不長(zhǎng),另一方面是我們的企業(yè)確實(shí)也沒(méi)有這方面的需求。 2.4.2 數(shù)據(jù)庫(kù)概論 數(shù)據(jù)管理技術(shù)的發(fā)展, 與硬件 (主要是外存) 、 軟件、 計(jì)算機(jī)應(yīng)用的范圍有密切的聯(lián)系。 數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)過(guò)三個(gè)階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)階段5。 20 世 紀(jì) 60 年代末發(fā) 生的三件大事, 層次模型MIS系統(tǒng)的 推出、 關(guān)于網(wǎng)狀模型報(bào)告的發(fā)表以及關(guān)于關(guān)系模型論文的連續(xù)發(fā)表標(biāo)志著數(shù)據(jù)管理技術(shù)進(jìn)入數(shù)據(jù)庫(kù)階段。 進(jìn)入 70 年代以 后, 數(shù)據(jù)庫(kù)技術(shù)得到迅速發(fā)展,開(kāi)發(fā)了許多有效的產(chǎn)品并投入運(yùn)行。數(shù)據(jù)庫(kù)系統(tǒng)克服了文件系統(tǒng)的缺陷,提供了對(duì)數(shù)據(jù)更高級(jí)更有效的管理。 當(dāng)進(jìn)入 數(shù)據(jù)庫(kù)階段后, 隨著數(shù)據(jù)管理規(guī)模一再擴(kuò)大, 數(shù)據(jù)量急劇增加, 為了提高效率, 開(kāi)始時(shí) ,人們只是對(duì)文件系統(tǒng)加以擴(kuò)充,在應(yīng)用文件中建立了許多輔助索引,形成倒排文件系統(tǒng)。但這并不能最終解決問(wèn)題。在 20世紀(jì) 60 年代 末,磁盤(pán)技術(shù)取得重要進(jìn)展,具有數(shù)百兆容量和快速存取的磁盤(pán)陸續(xù)進(jìn)入市場(chǎng),成本也不高,為數(shù)據(jù)庫(kù)技術(shù)的產(chǎn)生提供了良好的物質(zhì)條件。 數(shù)據(jù)庫(kù)技術(shù)還在不斷的發(fā)展,并且不斷地與其它計(jì)算機(jī)技術(shù)相互滲透。數(shù)據(jù)庫(kù)技術(shù)與網(wǎng)絡(luò)通信技術(shù)相結(jié)合,產(chǎn)生了分布式數(shù)據(jù)庫(kù)系統(tǒng)。數(shù)據(jù)庫(kù)技術(shù)與面向?qū)ο蠹夹g(shù)相結(jié)合,產(chǎn)生了面向?qū)ο髷?shù)據(jù)庫(kù)系統(tǒng)。 在數(shù)據(jù)庫(kù)技術(shù)中有下面四個(gè)名詞: 數(shù)據(jù)庫(kù)(database,db) :db 是統(tǒng)一管 理的相關(guān)數(shù)據(jù)的集合。db 能為各種用戶共享,具有最小冗余度,數(shù)據(jù)間聯(lián)系密切,而又有較高的數(shù)據(jù)獨(dú)立性。 數(shù)據(jù)庫(kù)管理系統(tǒng)(database management system) : 是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問(wèn) db 的方法,包 括 db 的建立 、查詢、更新及各種數(shù)據(jù)控制。DBMS總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型和面向?qū)ο笮?DBMS。 數(shù)據(jù)庫(kù)系統(tǒng)(database system):是 實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問(wèn)的計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即采用了數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng)。數(shù)據(jù)庫(kù)技術(shù):這是一門(mén)研究數(shù)據(jù)庫(kù)的結(jié)構(gòu)、存儲(chǔ)、管理和使用的軟件學(xué)科。數(shù)據(jù)庫(kù)技術(shù)是操作系統(tǒng)的文件系統(tǒng)基礎(chǔ)上發(fā)展起來(lái)的。而 DBMS 本身要在操 作系統(tǒng)的支持下才能工作。數(shù)據(jù)庫(kù)不僅用到數(shù)據(jù)結(jié)構(gòu)的知識(shí),而且豐富了數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。在關(guān)系數(shù)據(jù)庫(kù)中要用到集合論、數(shù)理邏輯的理論。因此,數(shù)據(jù)庫(kù)技術(shù)是一門(mén)綜合性較強(qiáng)的學(xué)科。 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)分為三個(gè)階段,分別是:收集和分析用戶要求、建立 E R 模型和 數(shù)據(jù)庫(kù)模式設(shè)計(jì)。主要任務(wù)是創(chuàng)建數(shù)據(jù)庫(kù)模式。數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)中的第一階段收集和分析用戶需求是按以下四步進(jìn)行的:分析用戶活動(dòng),確定系統(tǒng)范圍,分析用戶活動(dòng)所涉及的數(shù)據(jù)和分析系統(tǒng)數(shù)據(jù). 數(shù)據(jù)流圖是一種從數(shù)據(jù)和對(duì)數(shù)據(jù)的加工兩方面表達(dá)系統(tǒng)工作過(guò)程的圖形表示法。含有四種基本成分:帶箭頭的線段表示數(shù)據(jù)及其流動(dòng)方向,圓形框表示對(duì)數(shù)據(jù)的加工,卡片形框表示文件,方框第 8 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 表示源點(diǎn)和終點(diǎn)。 畫(huà)數(shù)據(jù)流圖應(yīng)遵循:由外向內(nèi)、自頂向下原則進(jìn)行。 數(shù)據(jù)庫(kù)系統(tǒng)的生命期可以分為五個(gè)階段,依次是分析、設(shè)計(jì)、編碼、測(cè)試、運(yùn)行。 所謂分析用戶活動(dòng)所涉及的數(shù)據(jù)就是以數(shù)據(jù)流圖的形式表示出數(shù)據(jù)的流向和對(duì)數(shù)據(jù)所進(jìn)行的加工。 所謂分析系統(tǒng)數(shù)據(jù)就是對(duì)數(shù)據(jù)流圖中的每一個(gè)數(shù)據(jù)流名、每個(gè)文件名、每個(gè)加工名,都要給出具體定義,都需要用一個(gè)條目進(jìn)行描述。描述后的產(chǎn)物是數(shù)據(jù)字典。數(shù)據(jù)流圖和數(shù)據(jù)字典結(jié)合在一起,加上必要的說(shuō)明構(gòu)成系統(tǒng)說(shuō)明書(shū)。數(shù)據(jù)字典是對(duì)數(shù)據(jù)流圖中的四個(gè)成分(數(shù)據(jù)流、數(shù)據(jù)項(xiàng)、文件、加工)的描述。 教材中所講的數(shù)據(jù)庫(kù)設(shè)計(jì)方法稱為視圖設(shè)計(jì)法,即從分析用戶的活動(dòng)入手,針對(duì)用戶的局部視圖,然后進(jìn)行綜合,用 E-R 圖表示數(shù)據(jù)庫(kù)的概念,進(jìn)而轉(zhuǎn)換為關(guān)系模式。 邏輯設(shè)計(jì)第二階段建立 E-R 模型分兩 步,首先應(yīng)進(jìn)行局部 E -R 模型設(shè)計(jì) ,然后進(jìn)行總體 E -R 模型的設(shè)計(jì)。 邏輯設(shè)計(jì)第 三階段在數(shù)據(jù)庫(kù)模式設(shè)計(jì)階段分兩步進(jìn)行,第一步初步設(shè)計(jì):把 E-R 圖轉(zhuǎn)換為關(guān)系模型,第二步優(yōu)化設(shè)計(jì):對(duì)模式進(jìn)行調(diào)整和改善。 優(yōu)化是在性能預(yù)測(cè)的基礎(chǔ)上進(jìn)行的, 一般用三方面指標(biāo)來(lái)衡量: 1 、 單 位時(shí)間內(nèi)所訪問(wèn)的邏輯記錄個(gè)數(shù)要少, 2 、單位時(shí)間內(nèi)數(shù)據(jù)傳送量要少; 3 、系統(tǒng)占用的存儲(chǔ)空間盡量要少。 第 9 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 3 選題系統(tǒng)的實(shí)現(xiàn) 3.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)主模塊 學(xué) 生 選題 模塊 學(xué)生在線注冊(cè) 學(xué)生在線選題 學(xué)生選題信息回饋教師在線課題申報(bào)教師申報(bào)課題回饋學(xué)生選題信息回饋教師注冊(cè)信息一覽學(xué)生注冊(cè)信息一覽 學(xué)生選題情況教師課題申批情況 教師管理模塊管理員管理模塊 教師在線注冊(cè)教師申報(bào)課題申批圖 3.1 系統(tǒng)的總體設(shè)計(jì)模塊 3.1.1 主界面模塊 功能 該模塊提供教務(wù)管理系統(tǒng)的主界面,是本系統(tǒng)的唯一入口和出口。 操作 該界面提供用:戶選擇并調(diào)用各子模塊, 對(duì)于進(jìn)入指導(dǎo)老師管理功能,還要核對(duì)用戶名和口令。 3.1.2 管理員界面模塊 功能 該模塊提供對(duì)教師申報(bào)的論文進(jìn)行審查。 操作 對(duì)符合要求的課題提交到學(xué)生選題信息列表中供學(xué)生選題。 3.1.3 學(xué)生選題界面模塊 功能 該模塊提供選題界面,進(jìn)入該界面后學(xué)生可以進(jìn)行選題。 操作 每個(gè)學(xué)生只能選擇一個(gè)論文課題。 3.1.4 教師課題申報(bào)模塊 功能 該模塊提供教師申報(bào)論文。 操作 教師登錄后可以申報(bào)課題,每個(gè)教師可以同時(shí)申報(bào)多個(gè)課題。 第 10 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 3.2 學(xué)生選題子模塊具體實(shí)現(xiàn) 3.2.1 學(xué)生登錄 如果學(xué)生要使用選題、查詢等功能,那么在使用這些功能之前必須登錄。學(xué)生的登錄方式很簡(jiǎn)單, 只要輸入姓名和相應(yīng)的密碼就可以了。 如果學(xué)生的密碼和數(shù)據(jù)庫(kù)中保存的該學(xué)生的密碼相符合,那么就表明學(xué)生登錄成功;如果不符合,會(huì)給出相應(yīng)的提示信息,那么就登錄失敗。主要頁(yè)面見(jiàn)下圖: 圖 3.2 學(xué)生登錄界面 主 頁(yè)學(xué)生登錄身份認(rèn)別學(xué)生在線選題 查看選題結(jié)果正確返 回 圖 3.3 學(xué)生模塊的流程圖 如果是新用戶的話可以在線注冊(cè): 第 11 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 圖 3.4 學(xué)生在線注冊(cè) 3.2.2 學(xué)生選題 當(dāng)學(xué)生成功登錄后,進(jìn)入“學(xué)生在線選題”頁(yè)面。如果要進(jìn)行選題,可以單擊“學(xué)生選題”按鈕,即可進(jìn)入學(xué)生選題頁(yè)面。學(xué)生可根據(jù)自己的情況對(duì)照論文信息進(jìn)行選題。選題完成按“提交”后,會(huì)出現(xiàn)選題成功提示。主要頁(yè)面見(jiàn)下圖: 圖 3.5 學(xué)生在線選題界面 如果選題成功就會(huì)彈出下面的頁(yè)面: 第 12 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 圖 3.6 選題成功界面 如果多選題就會(huì)彈也下圖的頁(yè)面: 圖 3.7 選題失敗 3.2.3 學(xué)生選題信息回饋 在學(xué)生選題頁(yè)面中,當(dāng)你點(diǎn)擊“畢業(yè)設(shè)計(jì)_學(xué)生選題信息回饋”時(shí),便可進(jìn)入查詢你所選定的課題,如下圖所示。在該頁(yè)面中還設(shè)置了分頁(yè)功能,你可以通過(guò)“上一頁(yè)”和“下一頁(yè)”標(biāo)志來(lái)進(jìn)行查詢;當(dāng)查詢完畢時(shí),可以按下“返回上頁(yè)”和“返回首頁(yè)” ,便可輕松返回了。 第 13 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 圖 3.8 學(xué)生選題信息回饋 3.3 教師課題申報(bào)子模塊具體實(shí)現(xiàn) 3.3.1 教師登錄 教師在網(wǎng)上進(jìn)行論文信息設(shè)計(jì)時(shí)必須先登錄, 其目的是確認(rèn)教師的身份。 在本系統(tǒng)中, 我們將登錄設(shè)置在首頁(yè), 如圖所示。 登錄的功能實(shí)現(xiàn)如下: 教師的登錄方式很簡(jiǎn)單, 只要輸入教師姓名和密碼就可以了。 判斷教師填寫(xiě)正確與否的程序, 把獲得的信息與用戶信息數(shù)據(jù)庫(kù)中的教師信息進(jìn)行比較。如果信息相符合,那么就表明教師登錄成功;如果不符合,那么就登錄失敗。 圖 3.9 教師登錄界面 圖 3.10 教師模塊的流程圖 主 頁(yè)教師登錄身份識(shí)別教師課題申報(bào) 教師 信息維 護(hù)正確返 回 第 14 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 3.3.2 課題申報(bào) 教師在登錄 成功之后, 進(jìn)入到教師論文申報(bào)頁(yè)面, 如下圖所示。 在該頁(yè)面中, 教師必須輸入 “課題名稱、 指導(dǎo)教師、 課題來(lái)源、 課題類(lèi)型、 適用專(zhuān)業(yè)、 指導(dǎo)學(xué)生人數(shù)、 課題申報(bào)表” , 否則論 文信 息就無(wú)法提交。在教師論文信息輸入成功之后,系統(tǒng)會(huì)出現(xiàn)“課題申報(bào)成功”的提示。 圖 3.11 教師注冊(cè)界面 3.3.3 課題申報(bào)信息回饋 在課題發(fā)布頁(yè)面中, 當(dāng)你點(diǎn)擊 “畢業(yè)設(shè)計(jì)_教師 課題申報(bào)信息回饋” 時(shí), 便可進(jìn)入查詢你所申報(bào)的課題是否已經(jīng)被審核, 如下圖所示。 在該頁(yè)面中還設(shè)置了分頁(yè)功能, 你可以通過(guò) “上一頁(yè)” 和 “ 下一頁(yè)”標(biāo)志來(lái)進(jìn)行查詢;當(dāng)查詢完畢時(shí),可以按下“返回上頁(yè)”和“返回首頁(yè)” , 便可輕松返回了。 圖 3.12 教師課題申報(bào)信息回饋界面 3.3.4 學(xué)生選題信息回饋 在課題發(fā)布頁(yè)面中, 當(dāng)你點(diǎn)擊 “畢業(yè)設(shè)計(jì)_學(xué)生 (論文)選題 信息回饋” 時(shí), 便可進(jìn)入查詢有哪 些學(xué)生選了哪個(gè)教師的課題,如下圖所示。在該頁(yè)面中還設(shè)置了分頁(yè)功能,你可以通過(guò)“上一頁(yè)”和第 15 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) “下一頁(yè)” 標(biāo)志來(lái)進(jìn)行查詢; 當(dāng)查詢完畢時(shí), 可以按下 “返回上頁(yè)” 和 “返回首頁(yè)” , 便可輕 松返 回了。 圖 3.13 學(xué)生選題信息回饋界面 3.4 管理員管理子模塊的實(shí)現(xiàn) 進(jìn)入登錄頁(yè)面后就有 “系統(tǒng)信息管理” , 包括以下的子功能 “課題申報(bào)審批” 、 “教師信息一覽表” 、“教師課題申報(bào)信息回饋” 、 “畢業(yè) 設(shè)計(jì)學(xué)生(論 文 )選題信息 回饋” 、 “學(xué) 生信息情況一覽表” 。 分別實(shí)現(xiàn)不同的功能需要。 圖 3.14 管理員登錄界面 第 16 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 管理員登錄身份識(shí)別管理員信維護(hù) 教師信息維護(hù)正確返 回 主 頁(yè)圖 3.15 管理員模塊的流程圖 如果登錄成功就進(jìn)入課題申報(bào)信息申批主界面,在此頁(yè)面中管理員可以對(duì)教師申報(bào)的課題進(jìn)行審核,只有通過(guò)審核了的論文課題才能供學(xué)生選如下圖所示: 圖 3.16 課題申報(bào)信息申批 在此功能模塊中還可以查看通過(guò)審核的所有課題如下圖所示: 第 17 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 圖 3.17 通過(guò)申批的所有課程 管理員管理模塊還具有對(duì)教師、學(xué)生注冊(cè)信息的管理如下圖所示: 圖 3.18 學(xué)生注冊(cè)信息管理 圖 3.19 教師注冊(cè)信息管理 管理員應(yīng)該對(duì)整個(gè)論文選題系統(tǒng)有相當(dāng)?shù)恼J(rèn)識(shí),他們可以瀏覽學(xué)生的選題情況,還可以查看是否每個(gè)學(xué)生都已經(jīng)選好了論文題目并找到了指導(dǎo)教師,如果有學(xué)生在規(guī)定時(shí)間內(nèi)還沒(méi)有選好題目或者找到指導(dǎo)老師,就通知他盡快選好。從教師的角度看,可以看出哪些題目是學(xué)生感興趣的,哪些第 18 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 題目是沒(méi)有學(xué)生選擇的,為今后的出題提供依據(jù)。 3.5 數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn) 3.5.1 系統(tǒng)數(shù)據(jù)庫(kù)的概念設(shè)計(jì) 根據(jù)對(duì)數(shù)據(jù)流圖和數(shù)據(jù)字典的分析,確定該系統(tǒng)中的實(shí)體、屬性和實(shí)體之間的聯(lián)系,并畫(huà)出畢業(yè)論文選題系統(tǒng)的實(shí)體-聯(lián)系圖(即 E-R 圖) 。 指導(dǎo)老師指導(dǎo) 1學(xué)生 課題 對(duì)應(yīng)N1NN 1對(duì)應(yīng) 圖 3.20 教務(wù)管理信息系統(tǒng)的 E-R圖 3.5.2 數(shù)據(jù)庫(kù)的設(shè)計(jì) 根據(jù)網(wǎng)上選課系統(tǒng)的特點(diǎn)和要求,在 SQL Server 2000 中主要建立以下 6 張表: 表名:admin 用于存儲(chǔ)管理信息 表 3.1 admin 信息表 Field Type Null Key Default comment admin_id Int (10) - PRI 主鍵 admin_name varchar(20) - 0 admin_password varchar(50) - 0 表名:student 用于存儲(chǔ)學(xué)生信息 表 3.2 student信息表 Field Type Null Key Defaultuser_id Int(11) - PRI Null user_name varchar(20) Yes 0 Null user_pass varchar(50) Yes 0 Null sex varchar(2) Yes 0 Null question varchar(150) Yes 0 Null answer varchar(150) Yes 0 Null user_gre varchar(150) Yes 0 Null user_mail varchar(8) Yes 0 Null user_tel varchar(50) Yes 0 Null user_namec varchar(20) Yes 0 Null user_number varchar(20) Yes 0 Null user_regip Varchar(20) Yes 0 Null user_regtime Varchar(20) Yes 0 Null 第 19 頁(yè) 共 53 頁(yè)Null - 用戶名 - 密碼 comment 主鍵 用戶名 密碼 性別 性別 地址 所在班級(jí) 郵編 電話 真姓名 學(xué)號(hào) 注冊(cè)時(shí)間 注冊(cè) IP 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) user_self Varchar(20) Yes 0 Null 專(zhuān)業(yè)特長(zhǎng) 表名:teacher 用于存儲(chǔ)教師信息 表 3.3 teacher 信息表 Field Type Null Key Default comment tea_no Int(11) - PRI Null 主鍵 tea_name varchar(20) Yes 0 Null 教師姓名 tea_password varchar(20) Yes 0 Null 密碼 tea_sex varchar(20) Yes 0 Null 教師性別 tea_email varchar(50) Yes 0 Null 教師郵箱 tea_phone varchar(15) Yes 0 Null 電話 tea_post varchar(10) Yes 0 Null 職稱 tea_self varchar(50) Yes 0 Null 個(gè)人簡(jiǎn)介 表名:lwxt_xsxt_xx 用于存儲(chǔ)選題信息 表 3.4 lwxt_xsxt_xx信息表 Field Type Null Key Default comment id int(11) - PRI Null 主鍵(課題號(hào)) ktmc varchar(20) - 0 Null 課題名稱 ktly varchar(20) Yes 0 Null 課題來(lái)源 syzy varchar(20) Yes Null 適用專(zhuān)業(yè) zdjs varchar(2) Yes 0 Null 指導(dǎo)教師 ktlx varchar(150) Yes 0 Null 課題類(lèi)型 zdrs int(4) Yes 0 Null 指導(dǎo)人數(shù) ktyq varchar(150) Yes 0 Null 課題要求 user_namec varchar(20) Yes 0 Null 學(xué)生姓名 add_time varchar(50) Yes 0 Null 選題時(shí)間 表名:lwxt_ktxx 用于存儲(chǔ)課題信息 表 3.5 lwxt_ktxx 信息表 Field Type Null Key Default comment id Int(11) - PRI Null 主鍵(課題號(hào)) ktmc varchar(20) - 0 Null 課題名稱 zdjs varchar(50) - 0 Null 指導(dǎo)教師 ktly varchar(20) Yes 0 Null 課題來(lái)源 ktlx varchar(2) Yes 0 Null 課題類(lèi)型 syzy varchar(150) Yes 0 Null 適用專(zhuān)業(yè) zdrs int(4) Yes 0 Null 指導(dǎo)人數(shù) ktyq varchar(150) Yes 0 Null 課題要求 file_url varchar(50) Yes 0 Null 文件路徑 input_time varchar(50) Yes 0 Null 提交時(shí)間 input_ip varchar(20) Yes 0 Null 提交 ip 表名:lwxt_ktsh 用于存儲(chǔ)申核后的課題 表 3.6 lwxt_ktsh信息表 Field Type Null Key Default comment id int(11) - PRI Null 主鍵(課題號(hào)) ktmc varchar(20) - 0 Null 課題名稱 zdjs varchar(50) - 0 Null 指導(dǎo)教師 ktly varchar(20) Yes 0 Null 課題來(lái)源 ktlx varchar(2) Yes 0 Null 課題類(lèi)型 syzy varchar(150) Yes 0 Null 適用專(zhuān)業(yè) zdrs int(4) Yes 0 Null 指導(dǎo)人數(shù) 第 20 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) ktyq Varchar(150) Yes 0 Null 課題要求 file_url varchar(8) Yes 0 Null 文件路徑 3.5.3 JSP 與 SQL Server 數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn) 假設(shè)我們要訪問(wèn) SQL server 服務(wù)器上的一個(gè) jsjx_lwst 數(shù)據(jù)庫(kù),該庫(kù)有一個(gè)表 student。 為了連接這個(gè) SQL server 數(shù)據(jù)庫(kù),我們需設(shè)置一個(gè)數(shù)據(jù)源。具體步驟如下: 控制面板-管理工具-ODBC 數(shù)據(jù)源,打開(kāi) odbc 數(shù)據(jù)源。 選擇“用戶 DSN”頁(yè)簽,單擊“添加”按鈕,出來(lái)新的數(shù)據(jù)源。 根據(jù)所要連接的數(shù)據(jù)源選擇要添加的驅(qū)動(dòng)程序 (這里選擇sql server) , 單擊“完成”按鈕。 出來(lái)設(shè)置數(shù)據(jù)源具體項(xiàng)目的對(duì)話框6。 在數(shù)據(jù)源名稱欄上填上一個(gè)自己定義的名字,描述欄可以選填。有的時(shí)候要求填選服務(wù)器的名字,根據(jù)需要可以選填。 單擊“下一步”按鈕,選擇“使用用戶登錄表示號(hào)和密碼的 sql server 驗(yàn)證” , 登陸標(biāo)識(shí)號(hào)填寫(xiě)“l(fā)wxt”密碼”lwxt”。單擊“下一步” 選填“改變默認(rèn)的數(shù)據(jù)庫(kù)為”復(fù)選框,然后在下拉式的列表框中選擇前面要訪問(wèn)的數(shù)據(jù)庫(kù) jsjx_lwxt。 單擊“下一步”按鈕,點(diǎn)選“執(zhí)行字符數(shù)據(jù)轉(zhuǎn)換”單擊“完成”測(cè)試 通過(guò)前面對(duì)數(shù)據(jù)源的定義,我們可以這樣理解,我們已經(jīng)有一個(gè)數(shù)據(jù)源,這個(gè)數(shù)據(jù)源就是一個(gè)數(shù)據(jù)庫(kù)。為了要連接到這個(gè)數(shù)據(jù)庫(kù),需要建立一個(gè) JDBC-odbc 橋接器,即加載橋接器驅(qū)動(dòng)程序。 Class.forName(“sun.jdbc.odbc.JdbcodbcDriver”); 這里 Class是 包 java.lang中的一個(gè) 類(lèi), 該類(lèi)通過(guò) 調(diào)用它的靜態(tài)方法 forName就可以建 立 JDBC-ODBC橋接器。由于在建立橋接器時(shí)可能發(fā)生異常,所以建立橋接器的標(biāo)準(zhǔn)是: tryClass.forName(“sun.jdbc.odbc.JdbcodbcDriver”); catch(ClassNotFoundException e) 本系統(tǒng)數(shù)據(jù)的連接采用的是 JDBC-ODBC 橋的連接方式,下面是主要代碼的實(shí)現(xiàn): 要查詢數(shù)據(jù)庫(kù)中的記錄,必須和數(shù)據(jù)庫(kù)建立連接,由于使用的是 JDBC-ODBC 方式訪 問(wèn)數(shù)據(jù)庫(kù),那么就要與數(shù)據(jù)庫(kù)建立連接。 第 21 頁(yè) 共 53 頁(yè) 本科畢業(yè)設(shè)計(jì)(論文) : JSP 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)選題系統(tǒng) 首先創(chuàng)建一個(gè) java.sql中的 Connection 類(lèi)的一個(gè) 對(duì)象聲明,然后再使用類(lèi) DriverManager 調(diào)用它的靜態(tài)方法 getConnectin()創(chuàng)建這個(gè)連接對(duì)象 Connection con=DriverManager.getConnection(“jdbc:odbc:數(shù)據(jù)源名字 ”,“登 陸 名 稱”,“登陸密碼”)。在本系統(tǒng)中數(shù)據(jù)源名字,登錄名稱,登錄密碼全為:lwxt。 4 關(guān)鍵技術(shù)的具體實(shí)現(xiàn) 4.1 JSP 的內(nèi)建對(duì)象 JSP有九大內(nèi)置 對(duì)象,即 Request,Response,Out,Session,Application,Cookie,Config,Page和 Exception。下面分別來(lái)介紹各個(gè)對(duì)象的作用和使用方法 。7 Request對(duì)象: getRemoteAddr():獲取客戶的 IP地址,如 String IP = request.getRemoteAddr();。 getRemoteHost():獲取客戶機(jī)的名稱,如 String clientName = request.getRemoteHost();。 getServerName():獲取服務(wù)器的名稱,如 String serverName = request.getServerName();。 getServerPort():獲取服務(wù)器的端口號(hào),如 int serverPort = request.getServerPort();。 getParameterNames() :獲取客 戶端提交 的所有參 數(shù)的名字 ,如 Enumeration enum = request.getParameterNames(); Response對(duì)象 對(duì)客戶的請(qǐng)求做出動(dòng)態(tài)的響應(yī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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東城市建設(shè)職業(yè)學(xué)院《生物統(tǒng)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海海洋大學(xué)《移動(dòng)應(yīng)用開(kāi)發(fā)》2023-2024學(xué)年第一學(xué)期期末試卷
- 懷化師范高等專(zhuān)科學(xué)?!哆\(yùn)動(dòng)生理學(xué)二》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京中醫(yī)藥大學(xué)《音樂(lè)學(xué)科課程與教學(xué)技能實(shí)訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京信息工程大學(xué)《英語(yǔ)寫(xiě)作(三)》2023-2024學(xué)年第一學(xué)期期末試卷
- 河北軟件職業(yè)技術(shù)學(xué)院《Androd移動(dòng)開(kāi)發(fā)》2023-2024學(xué)年第一學(xué)期期末試卷
- 湖北師范大學(xué)文理學(xué)院《水工鋼筋混凝土結(jié)構(gòu)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 首鋼工學(xué)院《景觀設(shè)計(jì)原理及設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 衡水學(xué)院《房地產(chǎn)開(kāi)發(fā)與經(jīng)營(yíng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 陜西服裝工程學(xué)院《和聲與鍵盤(pán)2》2023-2024學(xué)年第一學(xué)期期末試卷
- 財(cái)產(chǎn)獨(dú)立性專(zhuān)項(xiàng)審計(jì)報(bào)告模板3(清算審計(jì)報(bào)告模板)
- 腫瘤診療下鄉(xiāng)宣傳實(shí)施方案
- 高一生物遺傳測(cè)試卷及答案
- 物業(yè)員工保密意識(shí)培訓(xùn)
- 斷層解剖學(xué)知到智慧樹(shù)期末考試答案題庫(kù)2025年內(nèi)蒙古醫(yī)科大學(xué)
- 2025年康復(fù)治療師職業(yè)考試試卷及答案
- 衡水一中高一試卷及答案
- 2025-2030中國(guó)MEMS設(shè)計(jì)服務(wù)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025勞動(dòng)合同書(shū)范本 勞動(dòng)合同書(shū)樣本
- 第三方轉(zhuǎn)移支付協(xié)議
- 礦山測(cè)量工培訓(xùn)
評(píng)論
0/150
提交評(píng)論