984724289《JAVA程序設計》課程設計網(wǎng)上選課系統(tǒng)
《984724289《JAVA程序設計》課程設計網(wǎng)上選課系統(tǒng)》由會員分享,可在線閱讀,更多相關《984724289《JAVA程序設計》課程設計網(wǎng)上選課系統(tǒng)(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 遼 寧 工 業(yè) 大 學 JAVA IDE可視化設計 課程設計(報告) 題目: 網(wǎng)上選課系統(tǒng) 院(系): 專業(yè)班級: 學 號: 學生姓名: 指導教師: 教師職稱: 起止時間: 2010.6.28至2010.7.11 程序設計專題(報告)任務及評語 院(系):軟件學院
2、 教研室:軟件教研窒 學 號 學生姓名 專業(yè)班級 程序設計(報告)題目 網(wǎng)上選課系統(tǒng) 程序設計(報告)任務 程序設計專題的任務與要求: (1)掌握Java編程、面向對象的基礎知識。 (2)較熟練地編寫Java應用程序Application、小程序Applet。 (3)了解Java的常用標準類庫、編程技巧、異常處理及高級編程。 (5)聯(lián)系已學過的內(nèi)容,鞏固所學的理論,增強獨立工作能力。 (6)通過設計主要使學生有一個獨立編寫程序的過程,對理論學習及動手能力都有一個很大的提高。 (7)通過本次設計,進一步培養(yǎng)學生熱愛專業(yè)的思想,同時對本專
3、業(yè)綜合素質的提高起一個積極的推動作用。 程序設計過程中,要嚴格遵守實踐環(huán)節(jié)的時間安排,聽從指導教師的指導。正確地完成上述內(nèi)容,記錄實習日記,規(guī)范完整地撰寫出實訓報告。 指導教師評語及成績 該生在課程設計過程中,積極努力,態(tài)度端正,團結同學,遵守紀律,針對JAVA程序設計語言特點和所設計項目的需求,查閱較多資料,并進行市場調(diào)研,對具體設計要求和JAVA IDE環(huán)境操作掌握較好。設計各部分設計較好,具有較好的文檔和注釋內(nèi)容,程序邏輯性較好,所設計功能滿足需求分析要求,軟件實用性強,并具有較好的擴展性。設計報告規(guī)范完整,邏輯性較好,標識符合要求。較好地完成了JAVA IDE設計任務
4、。 成績: 指導教師簽字: 2010 年7 月 12 日 遼 寧 工 學 院 課 程 設 計 說 明 書(論 文) 目 錄 第1章 程序設計專題目的與要求 1 1.1 程序設計目的 1 1.2 程序設計的實驗環(huán)境 1 1.3 程序設計的預備知識 1 1.4 程序設計要求 1 第2章 程序設計內(nèi)容 2 2.1需求分析 2 2.2概要設計 2 2.3程序整體設計說明 3 2.3.1程序設計內(nèi)容…
5、……………………………………………………………3 2.3.2程序所用類說明……………………………………………………………6 2.3.3實現(xiàn)接口方法………………………………………………………………7 2.3.4線程應用……………………………………………………………………7 2.3.5程序異常處理說明…………………………………………………………8 2.3.6程序運行效果及存在問題…………………………………………………9 2.4程序部分源代碼及注釋 9 2.5測試結果 12 第3章 程序設計總結 14 參考文獻 15 第1章 程序設計目的與要求 1.
6、1 程序設計目的 《JAVA程序設計》是計算機科學與技術專業(yè)的必修專業(yè)基礎課程,其實踐性、應用性很強。實踐教學環(huán)節(jié)是必不可少的一個重要環(huán)節(jié)。本課程的程序設計專題實際是軟件技術專業(yè)學生學習完《JAVA程序設計》課程后,進行的一次全面的綜合訓練,JAVA程序設計的設計目的是加深對理論教學內(nèi)容的理解和掌握,使學生較系統(tǒng)地掌握程序設計及其在網(wǎng)絡開發(fā)中的廣泛應用,基本方法及技巧,為學生綜合運用所學知識,利用軟件工程為基礎進行軟件開發(fā)、并在實踐應用方面打下一定基礎。 1.2 程序設計的實驗環(huán)境 硬件要求能運行Windows 9.X操作系統(tǒng)的微機系統(tǒng)。JAVA程序設計語言及相應的集成開發(fā)環(huán)境,J2SD
7、K和ECLIPSE開發(fā)工具。 1.3 程序設計的預備知識 熟悉JAVA語言及ECLIPSE開發(fā)工具。 1.4 程序設計要求 按程序設計指導書提供的課題,要求學生在自行完成各個操作環(huán)節(jié),并能實現(xiàn)且達到舉一反三的目的,完成一個項目解決一類問題。要求學生能夠全面、深入理解和熟練掌握所學內(nèi)容,并能夠用其分析、設計和解答類似問題;對此能夠較好地理解和掌握,能夠進行簡單分析和判斷;能編寫出具有良好風格的程序;掌握JAVA程序設計的基本技能和面向對象的概念和方法;了解多線程、安全和網(wǎng)絡等編程技術。同時培養(yǎng)學生進行分析問題、解決問題的能力;培養(yǎng)學生進行設計分析、設計方法、設計操作與測試、設計過程的觀察
8、、理解和歸納能力的提高。 第2章 程序設計內(nèi)容 2.1需求分析 網(wǎng)上選課系統(tǒng)是針對在校學生和教師使用,從學生的角度來說,由于學校教學制度的改革,傳統(tǒng)的教學模式——學生按照學校安排好的課程上課——已經(jīng)不能適應新現(xiàn)在大部分高等院校開始實行的學生的自主選課模式型的教學手段,如果仍然通過紙上的方式選課,一方面浪費的大量的人力、物理資源,另一方面浪費時間以及在人為的統(tǒng)計過程中不可避免出現(xiàn)的差錯等情況。隨著高校人數(shù)的增多,這種弊端會越來越多的暴露出來。因此,利用網(wǎng)絡,只要學生只要在計算機前輸入自己的個人選課信息即可完成原來幾倍的作業(yè)量。從教師的角度來說,同樣是節(jié)省了大量的工作量,由于教師提出代課申請
9、完成課程發(fā)布的工作較學生選課而言更加的復雜,因此通過網(wǎng)上進行課程發(fā)布能大幅度的減少教師的工作量,減少錯誤的發(fā)生幾率。作為教師,也只要通過自己的電腦來操作即可,不用再奔波于教務處和辦公室之間。 2.2概要設計 在本系統(tǒng)的功能操作針對不同的用戶角色分權進行管理。系統(tǒng)對角色提供的主要功能如下:個人信息管理(編號、姓名、院系、學號、專業(yè)、性別等)、選課管理、管理學生以及本人已選課程。教師角色提供以下功能操作:查看自己所擔任課程的課表和選該門課的學生信息。系統(tǒng)給后臺管理員(后臺用戶)提供的操作功能如下:查看所有的院系、專業(yè)、課程、學生、教師的信息并對它進行管理(添加、編輯、刪除等)。 用戶的需求具
10、體體現(xiàn)在對各種信息的提供和查詢,數(shù)據(jù)庫是此類系統(tǒng)的核心,系統(tǒng)中所有的信息都存儲在數(shù)據(jù)庫中,與數(shù)據(jù)庫連接,操作數(shù)據(jù)庫中的數(shù)據(jù),從而實現(xiàn)所有需要的功能。 2.3程序整體設計說明 2.3.1程序設計內(nèi)容 本系統(tǒng)主要包括用戶管理、課程、我的選課、及其他管理等。 (1)用戶管理包括對學生帳號、密碼的修改。 (2)課程管理模塊包括課程信息查詢、選課、查詢所選課程、我的課表等信息。 (3)我的選課包括已經(jīng)選過的課程、不喜歡課程的退課等功能。 (4)其其他管理中主要包括新聞瀏覽、個人信息、退出登錄等功能。學生模塊功能如圖2.1所示: 網(wǎng)上選課系統(tǒng) 學生模塊 用 戶 管 理 課
11、 程 我 的 選 課 其 它 管 理 圖2.1 學生模塊圖 Fig2.1 Students module chart 1.學生選課系統(tǒng)的總體E-R圖,如圖2.2所示: n m n m n m n 1 1 n 選課系統(tǒng) 管理員 課程 教師 學生 維護 安排 教授 選擇 查看 圖2.2 總體E-R圖 Fig2.2 Overall E-R diagram 2.系統(tǒng)功能模塊 本系統(tǒng)主要有三大模塊組成:學生模塊、教師模塊、管理員模塊。 學生模塊包括用戶管理、課程信息、我的選課、其它管理。 管理員模塊包括用戶管理、
12、課程管理、選課管理、新聞管理。 教師模塊包括教師個人信息和課程信息。 網(wǎng)上選課系統(tǒng)主要由學生、教師、管理員組成。這樣分能夠更清晰的使整個系統(tǒng)更加有條理化、更加完善。系統(tǒng)總體結構圖如下圖4.1所示 3.數(shù)據(jù)庫表的設計 (1)教師表,此表中記錄了教師的全部信息,表的具體設計如表2.1所示: 表2.1 教師表 Tab2.1 teacher 列名 數(shù)據(jù)類型 長度 允許空 tno varchar 50 不 password varchar 50 不 tname varchar 50 不 tsex varchar 4 不 tage int 50
13、允許 tcollage varchar 50 允許 (2)通知表,在此表中記錄了通知的具體內(nèi)容,表的具體設計如表2.2所示: 表2.2 通知表 Tab2.2 notice 列名 數(shù)據(jù)類型 長度 允許空 id int 4 不 title varchar 50 不 detail varchar 1000 不 date datetime 8 允許 course_id char 50 不 4.網(wǎng)上選課系統(tǒng)流程圖如圖2.3所示:
14、 學生選課系統(tǒng) 學生 教師 管理員 用戶管理 課程 我的選課 其他管理 個人管理 課程信息 用戶管理 課程管理 選課管理 新聞管理 登陸 登陸 登陸 退出 圖2.3 網(wǎng)上選課系統(tǒng)流程圖 Fig2.3 Online courses system flowcharts 2.3.2程序中所用類說明 (1)用戶自定義類 網(wǎng)上選課系統(tǒng)中包括useBean2這個類,其中這個類的作用、繼承的父類如下 類名:useBean2 作用:主類 繼承的父類:無 (2)學生操作類: 學生模塊:學生模塊包括選課、退課以及查
15、看個人信息、查看教師信息等功能 (3)計算機操作類 系統(tǒng)管理模塊:包括添加、修改、刪除、查詢系統(tǒng)用戶名、口令、身份、數(shù)據(jù)備份、數(shù)據(jù)恢復等功能。 2.3.3、實現(xiàn)接口方法 Java接口本身沒有任何實現(xiàn),因為Java接口不涉及表象,而只描述public行為,所以Java接口比Java抽象類更抽象化。 Java接口的方法只能是抽象的和公開的,Java接口不能有構造器,Java接口可以有public,靜態(tài)的和final屬性。接口把方法的特征和方法的實現(xiàn)分割開來。這種分割體現(xiàn)在接口常常代表一個角色,它包裝與該角色相關的操作和屬性,而實現(xiàn)這個接口的類便是扮演這個角色的演員。一個角色由不同的演員來演
16、,而不同的演員之間除了扮演一個共同的角色之外,并不要求其它的共同之處。 2.3.4、線程應用 通常線程是在系統(tǒng)層被實現(xiàn)的。java是第一個在語言中實現(xiàn)的。java在語言級提供了對多線程設計的支持。線程:是進程中的一個單一的連續(xù)控制流程。一個進程可以擁有多個線程。多線程幫助你寫出CPU最大利用率的高效程序。舉例來說,網(wǎng)絡的數(shù)據(jù)傳送速率遠遠低于CPU處理能力,本地文件系統(tǒng)資源的讀寫速度也遠遠低于CPU的處理能力,在傳統(tǒng)的單線程環(huán)境中,你的程序必須等待每一個這樣的任務完成以后才能執(zhí)行下一步--盡管CPU大部分時間處于空閑。而JAVA的多線程能使你充分利用這些空閑的時間。在一個單線程程序中如果出現(xiàn)
17、阻塞則整個程序都可能停止運行,而在一個多線程的程序中這不會出現(xiàn)這樣的問題。當一個線程阻塞時,別的線程會運行,這樣可以大大的提高CPU效率。 每個線程都是一個線程組的一個成員,線程組把多個線程集成一個對象,通過線程組可以同時對其中的多個線程進行操作.在生成線程時必須將線程放在指定的線程組,也可以放在缺省的線程組中,缺省的就是生成該線程的線程所在的線程組.一旦一個線程加入了某個線程組,不能被移出這個組. 2.3.5、異常處理說明 異常處理提供了處理程式錯誤的統(tǒng)一機制。事實上,Java語言通過向調(diào)用者提出異常警告的方式而顯著地提升了軟件研發(fā)中的異常處理能力。這種方式把Java語言中的“方法(
18、method)”進行了擴展和增強,使之包括了自身的錯誤條件。異常處理是程序設計中一個非常重要的方面,也是程序設計的一大難點,從C開始,你也許已經(jīng)知道如何用if...else...來控制異常了,也許是自發(fā)的,然而這種控制異常痛苦,同一個異?;蛘咤e誤如果多個地方出現(xiàn),那么你每個地方都要做相同處理,感覺相當?shù)穆闊?Java語言在設計的當初就考慮到這些問題,提出異常處理的框架的方案,所有的異常都可以用一個類型來表示,不同類型的異常對應不同的子類異常,定義異常處理的規(guī)范 try { // Initialization mySmartUpload.initialize(config,reque
19、st,response); // Upload mySmartUpload.upload(); // Save the file with the original name // in a virtual path of the web server count=mySmartUpload.save(mySmartUpload.getRequest().getParameter("PATH")); // Display the result out.println(count + " file uploaded."); } catch (Exception e) {
20、out.println("Unable to upload the file.
");
out.println("Error : " + e.toString());
}
2.3.6、程序運行效果及存在的問題
學生網(wǎng)上選課系統(tǒng)是一個基于JSP技術的,實用性強的網(wǎng)絡系統(tǒng)。系統(tǒng)實現(xiàn)了對課程的基本信息和學生選課、學生和教師用戶進行管理。 系統(tǒng)存在著不足之處:由于編程經(jīng)驗尚淺,有很多功能實現(xiàn)的不夠全面。系統(tǒng)模塊化設計不夠理想,系統(tǒng)的業(yè)務邏輯層設計不夠全面,系統(tǒng)封裝性有待改善。
程序運行是出現(xiàn)的錯誤主要出現(xiàn)在數(shù)據(jù)庫的設計中,在一些需要命名,且名字應該唯一的信息輸入重復的名字或ID,看系統(tǒng)
21、有沒有處理,會否報錯,重名包括是否區(qū)分大小寫,以及在輸入內(nèi)容的前后輸入空格,系統(tǒng)是否作出正確處理. 2.4程序部分源代碼及注釋 學生用戶界面設計用框架實現(xiàn)。頁面頭放在上框架,功能導航放在左框架,具體功能放在右框架。學生功能設計所有頁面都放在student的文件夾中,所以以下所提到的頁面均在student文件夾中。設置學生界面框架結構主頁index.htm。其中左框架中的功能導航頁面為student_left.jsp,右框架中的功能頁面為student_body.jsp。 系統(tǒng)用session保存用戶的學號。 圖2.4學生用戶界面 Fig 2.4 Students in the
22、user interface 其中學生框架的代碼為:
23、>
25、 3.個人信息模塊包括個人資料和修改密碼兩部分。個人資料顯示學生的所有信息,包括學號、姓名、學院、系別、班級。密碼修改部分:用戶可以根據(jù)自己的需要修改密碼,方便用戶管理。 如圖4-4個人資料顯示頁面,4-5 密碼修改頁面。 圖2.5密碼修改頁面 Fig 2.5 password revision page <%@page contentType="text/html;charset=GBK" %> <%@page import ="java.sql.*"%> <%@page language="java"%>
26、itle>
27、=""; id=(String)session.getAttribute("s1"); String strSQL="select * from student where num="+id+""; ResultSet rs= reset.executeQuery(strSQL); rs.first(); %>
28、功能 項目 結果 學生模塊 學生登錄 當輸入一個學生帳號和密碼時,會顯示歡迎登錄成功或者密碼或帳號不正確不能登錄。測試成功。 個人信息 當學生登錄后可以查看個人信息,點擊個人信息后看見字的信息。測試成功 選課信息 學生可以看見所有選課的信息,根據(jù)自己的喜好選擇相應的科目,點擊選課后顯示選課成功。測試成功。 我的課表 點擊我的課表,可以看到自己所選課程和上課時間地點等信息。測試成功。 測試結論: 從測試結果來看,選課系統(tǒng)在功能上能夠滿足學生和教師的使用需求。學生網(wǎng)上選課系統(tǒng)是一個基于jsp技術的,實用性強的網(wǎng)絡系統(tǒng)。系統(tǒng)實現(xiàn)了對課程的基本信息和學生選課、學生和教師用
29、戶進行管理。系統(tǒng)的業(yè)務邏輯層設計不夠全面,系統(tǒng)封裝性有待改善。 第3章 程序設計總結 通過兩個星期的研究和開發(fā),我們小組選擇的課題學生選課系統(tǒng)基本完成。其功能基本符合網(wǎng)絡上的用戶要求,能夠在線選課,在線添加課程,在線查詢課程等。盡管由于自己知識上的不足,有些地方有少許錯誤和容錯性能比較低,但是還是可以基本完成選課系統(tǒng)應有的功能。 本系統(tǒng)為學生網(wǎng)上選課系統(tǒng),本系統(tǒng)主要是描述了學生通過登錄自己的賬號進入選課系統(tǒng)進行選課、退課、查看成績等,教師進入選課系統(tǒng)錄入學
30、生成績,管理員進入選課系統(tǒng)添加、刪除、修改課程等。剛開始的時候真的不知道該怎么來完成這個課程設計,甚至需要用什么服務器也怎么清楚,后來經(jīng)過一番的查資料后,知道了此課設需要我們學習的像Eclipse、SQL server 2000這樣的軟件服務器,但是僅僅有這兩個服務器也還是不可以的,隨后我們又用了Tomcat、jsp等軟件,這樣我們就有了些許的目標。在后來的編寫代碼運行程序的時候,也遇到了許多代碼的錯誤和程序的運行錯誤,但是后來也都一一改進了,整個的課程設計就已經(jīng)完成了一半,接下了就是寫文檔和報告,在寫文檔報告時,我們就是上網(wǎng)查些相關的資料,然后再根據(jù)系統(tǒng)等來完成文檔和報告。 總之,
31、在整個課程設計的過程中可以說是遇到了很多困難,但是也學到了很多以前我所不知道的知識,所以也有點感到很欣慰的,我希望在以后能有更多的課程設計,這樣不僅能夠鍛煉自己,還能夠學習更多的知識,讓我能夠再向成功邁出一步。 參考文獻 1 .[美]Cay S.Horstmann.程峰等譯 JAVA2核心技術.機械工業(yè)出版社.2003-06 2. 姜利群.JAVA網(wǎng)絡編程實例教程清華.北交大出版社.2005.1. 3. 教育部考試中心.全國計算機等級考試二級教程--Java語言程序設計.高等教育出版社.2004-04 4. [美]查普曼.Java程序設計——面向工程和科學人員.清華大學出版社.2005-05 5. [美]Bruce Eckel. Java編程思想(第4版).機械工業(yè)出版社.2007-06 6. 黃明 . JSP信息系統(tǒng)設計與開發(fā)實例.中國工業(yè)出版社.2003-06 7. 任新見.JSP動態(tài)網(wǎng)站快速開發(fā)實務.電子工業(yè)出版社.2005-03 8. 王技.JSP.NET信息管理系統(tǒng)開發(fā).人民郵電出版社.2005-05 9. 石志國 .JSP精解案例教程.清華大學出版社.2007-08 10. 薩師煊.數(shù)據(jù)庫系統(tǒng)概論.高等教育出版社.2005-05 統(tǒng)一文字大小與段落格式。 15
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術比武題庫含解析
- 1 礦山應急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復習題含答案
- 1 各種煤礦安全考試試題含答案