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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  基于web的在線答疑系統(tǒng)</p><p>  摘要:隨著計算機網(wǎng)絡技術的飛速發(fā)展與普及,很多的大學生已習慣了生存于“網(wǎng)絡”的世界中,網(wǎng)絡已經融入了他們的現(xiàn)實生活,網(wǎng)上學習也慢慢的成為一種學習方式。而在許多高校中普遍存在著教師和同學上課的時間段不同、教師和同學的空余時間很難統(tǒng)一起來等問題。因此,教師和同學想要在相同的時間和地點進行交流,就變得很不切合實際。在此需求的基礎上開發(fā)出來的在線答疑系統(tǒng)

2、既可以突破時間和地點上的限制、提高答疑的及時性和高效性、又可以很好地解決教師和學生之間因各種原因導致的互動不足與交流障礙等課堂之上難以解決的現(xiàn)實問題。因此,可以說此項目是解決此類問題的有效解決途徑。</p><p>  本系統(tǒng)使用java語言進行編寫,采用瀏覽器、服務器體系結構。在數(shù)據(jù)的存儲選擇上使用Mysql數(shù)據(jù)庫保存數(shù)據(jù),tomcat作為服務器,前端主要使用jsp、HTML進行頁面的整體的編碼,而頁面的統(tǒng)一布

3、局于美化則使用級聯(lián)樣式、JavaScript等技術進行實現(xiàn)。在后端的實現(xiàn)上主要采用了主流的strtus、spring框架來進行開發(fā),很大程度上減少了系統(tǒng)開發(fā)的代碼量,使項目層次分明,邏輯清晰。</p><p>  本系統(tǒng)的使用者主要由學生,教師和學校教務管理人員組成。針對各自職能的不同,有其相應的功能的實現(xiàn)。</p><p>  關鍵詞:在線答疑系統(tǒng);Servlet/jsp;java WE

4、B 項目;</p><p>  The Live Answering System </p><p>  Abstract:With the rapid development and popularization of computer network technology, many of the University students ha

5、ve been accustomed to living in the world of “Network”, the network has been integrated into their Real life, online learning has been slowly to be a way of learning. </p><p>  The prevalence of many problem

6、s such as the different class time between teachers and students and hard to unify the spare time between teachers and students exist in many colleges and universities.</p><p>  Therefore, teachers and stude

7、nts want to be in the same time and place to exchange, it is not practical. In this demand development on the basis of an online system can break through time and place limitations on, and raise a suspicion of timeliness

8、 and efficiency, and can be a good solution to teachers and students, for a variety of reasons for the inadequate interaction and communication barriers, and other classroom can be difficult to resolve the problems. <

9、/p><p>  Therefore, it can be said that this project is to resolve this type of issue of effective solutions.</p><p>  This system uses the Java-language written in the browser, the server architec

10、ture. In the data selection of Mysql save the database data, Tomcat as a server, and a front-side main using JSP, HTML coding whole pages, and unified layout of the page is used in landscaping CSS and JavaScript technolo

11、gies to achieve.</p><p>  On the back-end of the realization by the mainstream struts, spring framework for development, significantly reducing the amount of code system development and make the project stru

12、ctured, logic is clear.</p><p>  The system is being used, mainly by students, teachers and school attendance management staff. For each function, there is a corresponding function.</p><p><b

13、>  目 錄</b></p><p><b>  摘要I</b></p><p><b>  前 言3</b></p><p>  1.1課題研究背景及意義3</p><p>  1.1.1研究背景3</p><p>  1.1.2研究意義3&l

14、t;/p><p>  1.2 背景說明3</p><p>  1.3 系統(tǒng)目標4</p><p>  第一章 系統(tǒng)分析4</p><p>  2.1 可行性分析4</p><p>  2.1.1 技術可行性4</p><p>  2.1.2 經濟可行性4</p><p

15、>  2.2 需求分析5</p><p>  2.2.1 功能性需求分析5</p><p>  2.2.2 非功能性需求6</p><p>  2.2.3 系統(tǒng)流程圖7</p><p>  2.2.3 系統(tǒng)數(shù)據(jù)流圖9</p><p>  第三章 系統(tǒng)總體設計11</p><p

16、>  3.1項目規(guī)劃11</p><p>  3.2系統(tǒng)總體結構11</p><p>  3.3系統(tǒng)功能模塊12</p><p>  3.3.1 學生模塊功能定義12</p><p>  3.3.2教師模塊功能定義12</p><p>  3.3.3管理員模塊功能定義13</p><

17、;p>  第四章 數(shù)據(jù)庫設計13</p><p>  4.1 數(shù)據(jù)庫分析13</p><p>  4.2項目E-R圖13</p><p>  4.3數(shù)據(jù)庫中表的設計 16</p><p>  第五章 系統(tǒng)詳細設計與實現(xiàn)18</p><p>  5.1 界面設計18</p><p

18、>  5.2 系統(tǒng)分層19</p><p>  5.2.1 view層設計20</p><p>  5.2.2 model層設計20</p><p>  5.2.3 control層設計20</p><p>  5.3各個功能模塊的設計與實現(xiàn)21</p><p>  5.3.1用戶注冊21</p

19、><p>  5.3.2用戶登錄24</p><p>  5.3.3學生用戶操作26</p><p>  5.3.4管理員用戶操作29</p><p>  5.3.4教師用戶操作32</p><p>  第六章 系統(tǒng)測試計劃35</p><p>  6.1編寫目的35</p>

20、<p>  6.2主要功能部分測試分析36</p><p>  6.2.1注冊部分測試36</p><p>  6.2.2 課程搜索測試36</p><p>  6.2.3 權限控制測試37</p><p>  第七章 項目評價39</p><p>  7.1 項目功能總結39</p&

21、gt;<p>  7.2 項目中使用到的技術40</p><p>  7.3項目中的不足之處40</p><p>  第八章 個人總結41</p><p><b>  謝 辭43</b></p><p><b>  前 言</b></p><p>  1

22、.1課題研究背景及意義</p><p><b>  1.1.1研究背景</b></p><p>  隨著計算機網(wǎng)絡技術的飛速發(fā)展,計算機網(wǎng)絡已經與我們的生活密切相連,作為當代大學生該如何正確、高效地使用網(wǎng)絡來幫助我們學習更多的知識,已成為一個重要的課題。答疑作為教師教學過程的一個重要環(huán)節(jié),對教學的質量有著重要的意義,是教學過程中不可避免的。但由于受課時與教學進度、師生

23、比例的差距、上課地點的變動等原因,使得無法滿足學生的答疑需求。因此,答疑的方式急需改進。</p><p>  在這種情況下,基于web的在線答疑系統(tǒng),無疑是有效的解決方法之一。它不僅可以充分的利用教育資源,而且可以促進教師與學生之間的交流。具有高效及時的特性。</p><p><b>  1.1.2研究意義</b></p><p>  通過對本

24、系統(tǒng)的研究可以充分地利用網(wǎng)絡技術帶給我們的便利,使教師和同學之間不再有交流的障礙,拉近師生之間的距離,提高答疑工作的高效性與普遍性,增強學校的學習氛圍。</p><p><b>  1.2 背景說明</b></p><p> ?、俅_發(fā)系統(tǒng)名稱:在線答疑系統(tǒng)的設計與實現(xiàn)</p><p><b>  ②開發(fā)者:吳飛龍</b>

25、</p><p>  ③針對人員:管理員、教師、學生</p><p> ?、芗夹g支持:java web開發(fā)相關技術,如servlet、filter、框架技術。</p><p><b>  1.3 系統(tǒng)目標</b></p><p>  開發(fā)此系統(tǒng)的目的在于解決以下幾類問題:</p><p> ?、俅?/p>

26、疑時間和地點無法確定的問題</p><p> ?、趯W生有了自己無法解決的問題不能及時向教師提問的問題</p><p> ?、邸蔼殞W而無友”的問題</p><p> ?、芙處煙o法了解學生的學習和對知識的掌握情況的問題</p><p>  ⑤答疑工作不及時且效率低下的問題</p><p><b>  第一章 系統(tǒng)

27、分析</b></p><p><b>  2.1 可行性分析</b></p><p>  2.1.1 技術可行性</p><p>  本系統(tǒng)是基于瀏覽器、服務器體系的項目,主體開發(fā)主要采用的編程語言是java語言。現(xiàn)如今計算機硬件的配置足以滿足java的開發(fā)的需求。從軟件方面來看:本系統(tǒng)中將使用j2ee技術進行開發(fā),前端主要為DIV

28、+CSS使用到得軟件主要為Dreamweaver,后臺數(shù)據(jù)庫使用mysql,后臺編碼使用的軟件為myeclipse。這些軟件在網(wǎng)上都可以下載使用。因此,該項目在技術實現(xiàn)上是可行的。</p><p>  2.1.2 經濟可行性</p><p>  本系統(tǒng)對硬件的要求并不高,因此,在市場上很容易購買的到,且價格相對較為便宜。所使用的軟件Myeclipse、Mysql、tomcat、Dreamw

29、eaver等在網(wǎng)上都有免費的版本可供下載,從而在很大程度上節(jié)約了開發(fā)項目所需要的的成本。本系統(tǒng)需求明確,功能模塊清晰,邏輯簡單,因此開發(fā)難度不是很大。至于后期的維護也不需要太大的改動。因此,不會造成太大的經濟負擔。</p><p><b>  2.2 需求分析</b></p><p>  2.2.1 功能性需求</p><p>  在開始本系

30、統(tǒng)開發(fā)之前需求主要是以問卷調查、情景模擬、當面口頭詢問的方式獲取的,經過分析之后得出的教師、學生、后臺管理員其各自的需求與功能如下:</p><p><b>  1.學生用戶</b></p><p> ?、僮院偷卿洠簩W生用戶要想使用本系統(tǒng)就必須先要填寫相應的個人信息進行注冊。學生用戶通過注冊后,要想成功登錄本系統(tǒng)就必須使用已注冊的正確的用戶名和密碼進行登錄。否則,登

31、錄系統(tǒng)的操作將以失敗而告終。</p><p> ?、谛薷馁Y料:由于本系統(tǒng)中涉及到的個人信息并不是一成不變的。因此,如果用戶想要修改自己的個人信息,那么首先就要登錄本系統(tǒng),之后便可修改自己的信息。</p><p> ?、鄄榭刺釂枺鹤鳛榇鹨上到y(tǒng)中問題的提出者和使用者,學生用戶應該據(jù)有查看問題的功能。學生用戶登錄成功之后,學生可查看之前提問的回復情況也可以查看其它人提出的問題,如果自己對問題很感

32、興趣或者是知道該如何解答,那么也可以參與到其中與其他人一起討論交流。</p><p> ?、懿樵冋n程:學生用戶在選擇課程之前應該據(jù)有了解課程詳細信息的功能。若是自己想學習更多的知識可以通過查找找到相應的課程。由于有些學生可能對課程名稱和編號不是很了解,因此,該查詢過程支持模糊查詢。</p><p>  ⑤申請課程:學生用戶可以對自己感興趣的課程提出申請,通過填寫申請表單提交到教師處,最終由

33、教師來確定是否批準該請求。</p><p> ?、薏榭醋约簠⑴c的提問:學生可以對自己參與的討論進行查看,這樣可以增加同學之間的互動與交流,有助于交到更多志趣相同的朋友。</p><p><b>  2.教師用戶</b></p><p> ?、儆脩舻牡卿洠航處煹卿洷鞠到y(tǒng)時與學生用戶使用的為同一系統(tǒng)入口,本系統(tǒng)通過后臺可以智能的識別該用戶是否為教師

34、用戶,進而跳轉至相應的首頁。主要原理是通過與數(shù)據(jù)庫中的識別標志字段進行比較。</p><p> ?、谛薷馁Y料:考慮到教師信息也可能發(fā)生變化這一因素。因此,教師用戶應該具有修改自己信息的功能和權利。</p><p> ?、厶砑訉W生:學生用戶申請課程成功之后,他的相應信息會提交到該課程的授課教師處,授課教師根據(jù)實際情況決定是否添加該學生。</p><p> ?、軇h除學生

35、:教師可以根據(jù)實際的情況來刪除學生。如畢業(yè)離校的學生、故意擾亂秩序、發(fā)布惡意信息的不良學生。 </p><p> ?、莶榭葱枰卮鸬膯栴}:教師登錄系統(tǒng)后,系統(tǒng)會使用紅色字體提醒需要回答的問題的個數(shù)以及需要處理的申請的個數(shù),教師點擊查看之后,可以看到具體的問題信息和申請信息。</p><p> ?、薏榭匆呀浕卮鸬膯栴}:教師登錄系統(tǒng)之后,可以查看已經回答過的問題,若同學有新的疑問可以給出更

36、加詳細的回答,直到學生理解為止。</p><p><b>  后臺管理員</b></p><p> ?、僬n程管理,管理員可以根據(jù)學校開設課程和教師的情況合理的調節(jié)資源分配。</p><p> ?、趦热莨芾?,管理員對內容的管理主要體現(xiàn)在可以對提出的問題與回答的內容進行審查。如果提出的問題或問答為非法內容,則及時的刪除。</p>&l

37、t;p>  ③用戶管理,管理員可以對教師用戶和學生用戶進行管理,主要體現(xiàn)為對非法內容和用戶的刪除,對授課教師的調整。在本系統(tǒng)中注冊賬號時系統(tǒng)默認為學生用戶,教師用戶是由管理員來任命的,這也是用戶管理的一個重要體現(xiàn)。</p><p> ?、芄芾韱T管理,在本系統(tǒng)中設置有最高權限的管理員即超級管理員,擁有系統(tǒng)最高使用權限,可以對其他普通管理員進行添加和刪除管理。</p><p>  2.2

38、.2 非功能性需求</p><p>  1. 系統(tǒng)安全型需求</p><p>  從系統(tǒng)軟件使用方面來看:本系統(tǒng)中涉及到得三種不同身份的用戶在使用本系統(tǒng)時,必須經過系統(tǒng)的安全認證之后即成功的登陸之后,才可以使用其功能。各自的功能必須限定在其允許的權限之內。</p><p>  2.系統(tǒng)的開發(fā)與運行環(huán)境</p><p> ?、貸DK:提供了j

39、ava開發(fā)和運行環(huán)境。</p><p> ?、贛yEclipse:集成了java開發(fā)過程中用到的各種技術,本系統(tǒng)的主要開發(fā)工具。</p><p>  ③Mysql:一款中小型關系數(shù)據(jù)庫系統(tǒng)。最大的優(yōu)勢所有開發(fā)人員都可以免費使用。</p><p> ?、躷omcat:常用web服務器之一,體積小,性能穩(wěn)定,品質優(yōu)良。</p><p>  ⑤Dr

40、eamweaver:Dreamweaver主要用與快速的構建前臺頁面,加快開發(fā)的效率。</p><p>  2.2.3 系統(tǒng)流程圖</p><p>  使用本系統(tǒng)時首先需要對用戶身份的合法性進行驗證,如果系統(tǒng)驗證成功則成功登錄進系統(tǒng)。否則,返回登錄頁面提示登錄失敗。當用戶成功登陸本系統(tǒng)后,此用戶才能進行相應的操作。如果是學生用戶登錄,則可以修改自己的個人信息、查看自己的個人資料、查看自己的

41、提問、查看自己選擇的課程、個人申請的處理情況、查看個人參與的問題的討論。如果是教師登錄該系統(tǒng),教師可以查看自己的信息、修改自己的信息、查看自己的課程、學生申請列表、并對學生進行增加刪除操作,查看學生對教師提出的問題和問題的討論情況,根據(jù)討論的結果給出正確的評價并給出正確的結果。管理員用戶,經系統(tǒng)驗證之后,若成功登錄本系統(tǒng)之后,則可以對學生用戶進行添加和刪除、對學生用戶進行是否禁言的、可以添加新課程、指定新課程的授課教師、對現(xiàn)有的教師和課

42、程進行調整、對非法內容進行刪除、可以修改自己的個人信息等操作。本系統(tǒng)的流程圖如圖2-1所示。</p><p>  圖2.1 系統(tǒng)流程圖</p><p>  2.2.3 系統(tǒng)數(shù)據(jù)流圖</p><p>  本系統(tǒng)數(shù)據(jù)流的設計如圖2.2所示,所有用戶的個人信息都會輸入存儲到系統(tǒng)中,學生提問和教師答疑的過程也依賴與系統(tǒng)實現(xiàn),管理員通過本系統(tǒng)實現(xiàn)對其他用戶和問題與回復的管理。

43、</p><p>  圖2.2 系統(tǒng)數(shù)據(jù)流圖</p><p>  管理員管主要實現(xiàn)了對課程的信息的添加、修改和刪除等管理;對學生用戶的添加與刪除和對教師的任命和取消任命等管理;以及對提問回復管理,數(shù)據(jù)流圖如下所示。</p><p>  圖2.3 管理員數(shù)據(jù)流圖</p><p>  教師用戶主要實現(xiàn)了對學生、學生申請、自己所授課程信息、以及回答

44、問題的管理,其數(shù)據(jù)流圖如下。</p><p>  圖2.4 教師數(shù)據(jù)流圖</p><p>  學生用戶不僅可以查看自己所選擇的的課程、查看自己的申請?zhí)幚砬闆r、自己參與的問題討論情況而且還可以搜索課程和申請課程等。數(shù)據(jù)流圖圖2.5所示。</p><p>  圖2.5 學生數(shù)據(jù)流圖</p><p>  第三章 系統(tǒng)總體設計</p>

45、<p><b>  3.1項目規(guī)劃</b></p><p>  總體規(guī)劃:該在線答疑系統(tǒng)是一個基于Web項目,主要分為前端和后端兩部分。</p><p>  前臺展示模塊:主要由用戶身份登錄驗證、參與的討論、查看自己的課程和提問、自己參與的討論、申請課程和處理申請、修改自己的資料對于管理員可以對不良用戶進行刪除操作,并對新生進行添加等功能模塊組成。 &l

46、t;/p><p>  后臺管理模塊:該模塊主要負責對管理員用戶的增刪改查操作、提問和回復的增刪改查操作、課程的的增刪改查操作、學生和教師用戶的的增刪改查操作等。</p><p>  3.2 系統(tǒng)總體結構</p><p>  根據(jù)前面對系統(tǒng)所做出的分析和解讀,本系統(tǒng)總體的使用人群主要有3類用戶組成,即學生用戶、教師用戶和后臺管理員用戶。系統(tǒng)總體構圖如下所示。</p

47、><p>  圖3.1 系統(tǒng)結構圖</p><p><b>  3.3系統(tǒng)功能模塊</b></p><p>  該系統(tǒng)根據(jù)用戶身份、具體職責、需求的不同可以劃分為3類,進而設計了學生、教師、管理員三大功能模塊。其詳細的功能介紹如下所示。</p><p>  3.3.1 學生模塊功能定義</p><p>

48、;  圖3.1 學生功能表</p><p>  3.3.2教師模塊功能定義</p><p>  圖3.2 教師功能表</p><p>  3.3.3管理員模塊功能定義</p><p>  圖3.3 管理員功能表</p><p>  第四章 數(shù)據(jù)庫設計 </p><p><b>  

49、4.1 數(shù)據(jù)庫分析</b></p><p>  由于在本系統(tǒng)的設計過程發(fā)現(xiàn)數(shù)據(jù)不是很龐大,因此選擇使用Mysql數(shù)據(jù)庫,而且相較于其他數(shù)據(jù)庫Mysql的優(yōu)點有:開源、免費、性能穩(wěn)定、且支持事務處理等方面的好處。</p><p><b>  4.2項目E-R圖</b></p><p>  本在線答疑系統(tǒng)主要針對的是關于教員和學生間的交

50、流障礙問題,其涉及到得實體有:用戶、提問信息、回答信息、課程等實體。下面將對涉及到的所有實體進行分析,并繪制出相應的E-R圖。</p><p>  ①對于用戶實體其實體關系圖如下圖4.1所示,該圖中列出了用戶實體的所有屬性。</p><p>  圖4.1 用戶實體關系圖</p><p>  ②課程實體包含的屬性如下圖4.2所示。</p><p&g

51、t;  圖4.2 課程實體關系圖</p><p> ?、厶釂栃畔⒌闹饕獌热莅ㄈ缦聨讉€方面:提問人的用戶編號、提問所屬課程的ID、提問的內容、提問標題、查看次數(shù)、提問發(fā)表日期等,具體如下圖所示。</p><p>  圖4.3 提問信息實體關系圖</p><p>  ④回復問題信息實體主要包括的屬性及之間的關系,具體如下圖所示。</p><p>

52、;  圖4.4 回復信息實體關系圖</p><p> ?、萆暾埿畔嶓w與所涉及到的屬性之間的E-R圖如圖4.5所示。</p><p>  圖4.5 申請信息實體關系圖</p><p> ?、迣W生和課程之間存在著學習關系,該關系圖如4.6所示。</p><p>  圖4.6- 關系實體關系圖</p><p> ?、邔嶓w和

53、實體之間存在著如下圖所示的對應關系。</p><p>  圖4.7 實體總體關系圖</p><p>  4.3數(shù)據(jù)庫中表的設計 </p><p> ?、儆脩舯砩婕暗降盟袃热菥唧w如下圖所示。</p><p>  圖4.8 用戶表設計</p><p>  ②用戶課程表設計如下所示。</p><p

54、>  圖4.9 課程表設計</p><p>  ③提問信息表設計如圖所示。</p><p>  圖4.10 提問信息表設計</p><p> ?、芑貜托畔⒈碜衷O計如下所示。</p><p>  圖4.11 回復信息表設計</p><p> ?、萆暾埿畔⒈碓O計如下圖所示。</p><p> 

55、 圖4.12 申請信息表設計</p><p> ?、抻脩?課程表設計如下圖所示。</p><p>  圖4.13 用戶-課程表設計</p><p>  第五章 系統(tǒng)詳細設計與實現(xiàn)</p><p><b>  5.1 界面設計</b></p><p>  本系統(tǒng)的界面設計主要目的是為了針對用戶得到更

56、好的用戶體驗。所以本系統(tǒng)的界面設計需要滿足以下幾點:簡潔明了的人機交互、美觀的界面等。為了充分體現(xiàn)軟件的定位和特點,我們需要設計出符合用戶需求的系統(tǒng)界面。</p><p>  本在線答疑系統(tǒng)的主要是以jsp頁面來展示的,主要采用了div和table布局,CSS進行美化,同時又融入了JavaScript、ajax等主流的前端技術,給人一種耳目一新的感覺。本系統(tǒng)的界面主要以黃綠色為基色,符合大眾的審美觀念,能給用戶很

57、好的使用效果,給人帶來深刻的印象。</p><p>  本系統(tǒng)的部分界面如下:</p><p><b>  登陸界面:</b></p><p>  圖5.1 用戶登錄界面</p><p>  圖5.2 管理員功能界面</p><p><b>  教師功能界面</b><

58、/p><p>  圖5.3-學生用戶主頁面</p><p><b>  5.2 系統(tǒng)分層</b></p><p>  該在線答疑系統(tǒng)采用了mvc模式進行開發(fā),model層主要用于數(shù)據(jù)模型的建立以及與后臺數(shù)據(jù)庫的交互連接,view(視圖層)主要有jsp構成,負責頁面的動態(tài)顯示,control層主要交由strtus框架來實現(xiàn),用來處理業(yè)務邏輯和頁面之

59、間的跳轉。并將Strtus中的action類交由spring來管理,可以很大程度上簡化開發(fā)。</p><p>  5.2.1 view層設計</p><p>  在本系統(tǒng)中視圖層主要采用jsp技術。Jsp頁面在運行時,會先轉成servlet在經過編譯生成.java文件。所以jsp也就具有java語言的特性。因此,相較于靜態(tài)的HTML語言,JSP具有運行效率高,跨平臺性等優(yōu)點。但是由于jsp

60、頁面在第一次打開時會先存在編譯的過程,所以在第一次打開時可能比較慢,這也是由其自身特性決定的。</p><p>  為了使本系統(tǒng)具有好的體驗效果還采用了級聯(lián)樣式表(css)等技術對前端頁面進行美化。</p><p>  5.2.2 model層設計</p><p>  模型表示數(shù)據(jù)和業(yè)務規(guī)則。在本系統(tǒng)中模型層主要采用jdbc技術來實現(xiàn)與數(shù)據(jù)庫中數(shù)據(jù)的交互。Javab

61、ean對應本系統(tǒng)中所涉及到的對象,它地屬性與數(shù)據(jù)庫中表的字段相對應。在DBUTil類中將數(shù)據(jù)庫中的數(shù)據(jù)封裝進相應的對象中,在根據(jù)前端顯示頁面決定是否將封裝好的對象放置到集合中。</p><p>  在本項目中還用到了數(shù)據(jù)庫連接池技術,當在tomcat啟動時便創(chuàng)建好數(shù)據(jù)庫連接的實例,這樣便可以帶來資源重用、更快的系統(tǒng)響應速度、避免數(shù)據(jù)庫連接泄露等方面的好處。采用這種技術需要注意的是:如果要退出系統(tǒng)必須要先銷毀兩者之

62、間的連接。</p><p>  5.2.3 control層設計</p><p>  本系統(tǒng)中控制層主要Struts框架實現(xiàn),對于由客戶端發(fā)出的請求全部交由Struts來管理,每一個請求對應一個action類。本系統(tǒng)中的所有業(yè)務邏輯、業(yè)務處理都在Struts中的action類中進行處理。配置Struts環(huán)境如下:</p><p> ?、僭诒緒eb項目工程中添加所需的

63、jar包;</p><p> ?、谠趙eb項目中的web.xml中進行配置。 </p><p>  ③編寫相應的action類,其中涉及到業(yè)務邏輯的處理等。</p><p> ?、芘渲胊ction類,在strtus的配置文件中配置已經編寫好的action類。</p><p>  在該配置文件中可以有多個action,每一個action類中

64、可以有多個方法,其中的result中的name對應著該類中的返回值。為一個字符串類型對應著相應的跳轉頁面。</p><p>  在本系統(tǒng)中有著嚴格的權限控制,其主要功能是由攔截器實現(xiàn)的,本系統(tǒng)通過自定義的攔截器來實現(xiàn)權限控制。本系統(tǒng)的字符編碼等是由filter攔截器來實現(xiàn)的。</p><p>  Filter攔截器原理:所有來自瀏覽器的請求和服務器的響應都會先經過filter類的攔截,因此

65、可以在該類中對request、response對象的屬性進行相應的屬性設置。</p><p>  Struts的運行原理:對于每一個來自頁面的請求,都會被Struts的核心控制器截獲進而轉向相應的action類進行處理。在執(zhí)行action類中的方法之前,strtus會創(chuàng)建一個代理類對象并將相應的對象添加到值棧中,在實例化該代理類時將相應的值賦給對象。這樣在相應的展示頁面就可以使用strtus提供的標簽獲得相應對象

66、的屬性值。</p><p>  Struts與spring的整合:將上述編寫好的action類交由spring來管理,具體的做法是在spring的配置文件中使用bean標簽的id和class兩個屬性來指定其相對應的action和其所在的java類。這樣就避免了手動new對象的過程。極大地提高開發(fā)的效率。</p><p>  5.3各個功能模塊的設計與實現(xiàn)</p><p&

67、gt;  5.3.1 用戶注冊</p><p>  學生用戶在進入本系統(tǒng)時需要在瀏覽器地址欄輸入地址</p><p>  http://127.0.0.1:8080/zxdy/index.jsp時,該請求會被相應的action截獲,該action會自動獲取數(shù)據(jù)庫中的所有的提問信息,并將其封裝處理之后自動跳轉至主顯示頁面顯示,如果瀏覽器不支持自動跳轉則需要用戶手動的點擊超鏈接跳轉至主顯示頁

68、面。該信息不管你是否為該系統(tǒng)的用戶都可以看見。 </p><p><b>  圖5.4 主頁面</b></p><p><b>  圖5.5 提示頁面</b></p><p>  如圖5.4與5.5所示,主顯示頁面,該頁面有登錄和注冊按鈕,當用戶點擊注冊按鈕跳轉至注冊頁面。注冊頁面,如圖5.6所示。其中需要注冊的信息有

69、用戶名、密碼、及郵箱等信息。在該注冊頁面,帶*號的為必填的項目,為了使用戶的信息合法有效,該頁面采用ajax技術實現(xiàn)的驗證,可以實時的檢驗您的注冊信息如圖5.7所示。該種做法可以減少與數(shù)據(jù)庫之間的交互次數(shù),提高系統(tǒng)的運行效率。該頁面中還設置有驗證碼輸入框,對于需要注冊的用戶在提交用戶信息之前,必須填寫驗證碼。此項措施的目的在于防止別有用心之人惡意注冊。</p><p><b>  圖5.6 注冊頁面&

70、lt;/b></p><p>  圖5.7 注冊驗證圖</p><p>  只有當填寫的所有注冊信息符合要求時,才會跳轉至注冊成功頁面。如圖5.8所示:</p><p>  圖5.8 注冊成功提示圖</p><p>  否則,跳轉至注冊失敗頁面。</p><p>  圖5.9 注冊失敗提示圖</p>

71、<p>  5.3.2 用戶登錄</p><p>  當在主顯示頁面點擊用戶登錄時,跳轉至登錄頁面。該頁面主要有用戶名、密碼、驗證碼三部分組成,采用驗證碼主要是為了防止惡意破解個人密碼的情況發(fā)生。只有輸入正確的用戶名、和相匹配的密碼、以及正確的驗證碼才能跳轉至成功登錄后的頁面。用戶名、密碼、驗證碼三者缺一不可。頁面如圖5.10所示。</p><p>  圖5.10 登錄頁面&

72、lt;/p><p>  當填寫完登錄信息點擊登錄按鈕之后,若登錄信息與后臺數(shù)據(jù)庫中存儲的數(shù)據(jù)吻合時,即進入登錄成功頁面。登錄成功后,系統(tǒng)會將用戶的信息放置在session中,在頁面中可以從session中獲取用戶信息進行顯示。如圖5.11所示登錄成功后,從用戶session中獲取用戶名在頁面進行顯示。</p><p>  圖5.11 主頁面顯示圖</p><p>  若

73、登錄信息不正確,則跳轉至登錄錯誤頁面。</p><p>  圖5.12 登錄失敗提示圖</p><p>  在主顯示頁面中,還可以根據(jù)不同的選項來查詢相關的課程信息。該查詢功能可以按課程名和課程編號來查詢,并且支持模糊查詢。如下圖所示按照課程名字查找。</p><p>  圖5.13 搜索操作演示圖</p><p>  查找到的結果,如下圖所

74、示。</p><p>  圖5.14 搜索結果圖</p><p>  5.3.3 學生用戶操作</p><p>  學生用戶成功登錄系統(tǒng)后,將鼠標箭頭指向文字“我的”該文字標簽,會觸發(fā)一個鼠標懸浮事件,顯示當前用戶可以進行的所有操作。具體如下圖所示。</p><p>  圖5.15 學生功能演示圖</p><p> 

75、 登錄成功之后的用戶,可以查看自己相應的信息。如我的資料,該頁面會顯示當前用戶的注冊信息。如下圖所示。</p><p>  圖5.16 個人資料</p><p>  也可以進行修改密碼的服務,如下圖所示。需要注意的是輸入的舊密碼即為原始密碼必須填寫正確,新密碼與確認密碼必須要一致。上述兩點是成功修改密碼的必要條件,缺一不可。</p><p><b>  圖

76、5.17修改密碼</b></p><p>  上傳頭像的操作,如圖5.18所示。該操作需要注意的是:上傳的頭像必須為計算機可識別的圖片格式如jpg、png、gif等;修改郵箱時郵箱的格式必須符合要求。兩者都符合要求,才能修改成功。</p><p>  圖5.18 上傳頭像</p><p>  申請想要學習的課程,如圖5.19 所示。該操作要求申請人必先獲

77、取到相應課程的課程編號,這是此操作的必要前提。其次為申請的理由該項目用來供教師用戶決定是否添加該學生的唯一條件,必須認真的填寫。這將決定著你的請求是否會通過。</p><p>  圖5.19 申請課程</p><p>  我要提問,可以發(fā)表自己的問題。如圖5.20所示。在該項操作中需要注意的是:在自己的提問中不要發(fā)表與課程無關的內容、不要發(fā)表帶有政治色彩的內容、不要謾罵他人發(fā)表惡意內容,管

78、理員會根據(jù)你發(fā)表的內容進行審查,判定該內容是否為非法內容。若判定為非法內容則會刪除,甚至可能會將用戶判定為非法用戶進行刪除。還需注意的有發(fā)表內容時需選擇課程,填寫標題,內容不得少于8個字符。否則會被視為無效的內容,導致提問失敗。</p><p><b>  圖5.20 問題圖</b></p><p>  對于自己的提問,自己可以查看該問題下的所有回復,你也可以和他人進

79、行討論交流,從中找到志趣相同的人。設置該功能的初衷是“獨學而無友,則孤陋而寡聞”。在于他人的交流與討論中,即可以找出自身的不足,時刻鞭策自己。也可以向他人請教,“三人行,必有我?guī)煛薄?lt;/p><p>  圖5.21 查看提問圖</p><p>  自己也可以加入到他人討論的過程中去,如圖5.22所示是用戶參與問題討論的編輯區(qū)域。這樣可以更有利于自己交到跟多的朋友、學習更多的知識</p

80、><p>  圖5.22 參加討論圖</p><p>  5.3.4 管理員用戶操作</p><p>  在本系統(tǒng)的使用中學生用戶和管理員用戶有著不同的進入頁面,管理員通過管理員入口進入,具體地址http:localhost:8080/zxdy/adminIndex.jsp,通過驗證成功登錄后的頁面如圖所示:</p><p>  圖5.23 管

81、理員主界面</p><p>  課程管理中作為管理員可以添加一門課程,如圖5.24所示。需要注意的是課程名必須為學校以開設的課程,課程描述需要正確。</p><p>  圖5.24 添加課程</p><p>  在課程列表頁面中,作為管理員可以對課程名、描述、授課老師進行管理。其具體的操作為點擊編輯按鈕會跳轉至修改課程的頁面,在該頁面中可以對課程信息進行管理。需要注

82、意的是在修改課程授課老師時,該用戶的身份一定要為老師用戶否則會報錯。并且課程名與課程編號要匹配,否則也會操作失敗。</p><p>  圖5.25 管理課程</p><p>  在內容管理功能中,所有的提問標題、作者、發(fā)表日期等信息都會顯示在管理員的操作界面如下5.26所示,管理員可以通過點擊“查看”會顯示具體的內容。管理員通過對內容的審查,決定是否刪除該內容。</p>&l

83、t;p>  圖5.26 內容管理</p><p>  在內容管理功能中,管理員還可以查看所有的問題回復,并對其進行審核,如下圖所示。對于非法的回復內容進行刪除。</p><p>  圖5.27 審查內容</p><p>  在用戶管理功能中,管理員可以查看所有的用戶列表,正常情況下默認顯示所有的用戶信息如5.28所示。也可以通過“請選擇分類”后的下拉列表中的“

84、學生用戶”和“教師用戶”來選擇查看的對象。對于一些發(fā)表惡意內容的用戶可以選擇禁言操作,以示懲戒。若以后表現(xiàn)良好可以考慮給予其重新發(fā)表內容的權利。若該用戶仍然執(zhí)迷不悟,則可以選擇刪除該用戶。</p><p>  圖5.28 用戶管理</p><p>  在用戶管理功能中,考慮到用戶可能會遺忘密碼或記混用戶名和密碼的可能,管理員還可以根據(jù)用戶的書面或口頭請求為用戶提供重置密碼的服務。需注意的是

85、重置密碼由申請人提供,管理員不做記錄。</p><p>  圖5.29 重置密碼</p><p>  作為管理員可以對自己的密碼進行修改,長期使用同一密碼可能會存在密碼泄露風險。通過不定期的修改密碼進而提高管理員賬戶的安全性。需注意的是新密碼一定要便于記憶。</p><p>  圖5.30 修改密碼</p><p>  5.3.4教師用戶操作

86、</p><p>  教師用戶該系統(tǒng)的地址http:localhost:8080/zxdy/index.jsp,在登陸頁面填寫相應的用戶名和密碼之后,進行驗證正確之后進入管理頁面,可以對學生和課程進行相應的操作。</p><p>  教師用戶成功登錄之后會進入如5.31所示的界面,該頁面會顯示當前教師用戶需要回答的問題、需要處理的申請信息。通過點擊問題的標題,查看并回復問題;通過點擊“申請

87、列表”進入申請?zhí)幚眄撁嫒鐖D5.32所示,可以通過查看申請的理由等信息來決定是否添加該學生。</p><p>  圖5.31 查看未回復問題</p><p>  圖5.32申請?zhí)幚韴D</p><p>  教師用戶可以填加學生用戶,對于添加多個學生用戶時,使用英文狀態(tài)下的分號隔開,在后臺處理時會使用到字符串的分割,而分割的依據(jù)便是英文狀態(tài)下的分割符號。通過點擊“請選擇課

88、程”可以選擇將學生添加到自己所授的哪門課程下。</p><p>  圖5.33 添加學生</p><p>  教師用戶也可以對自己課程下的所有學生進行是否刪除的管理,具體的依據(jù)是通過查看該用戶的日常提問及回復是否存在非法內容,來認定該生是否為屢教不改之徒,若是則可以進行刪除操作。</p><p>  圖5.34 學生管理</p><p>  

89、教師用戶可以查看自己的個人資料。</p><p>  圖5.35 查看個人信息</p><p>  教師用戶可以修改自己的密碼。</p><p>  圖5.36 修改密碼</p><p>  教師用戶可以修改自己的個人資料。</p><p>  圖5.37 上傳頭像</p><p>  第六章

90、系統(tǒng)測試計劃</p><p><b>  6.1編寫目的</b></p><p>  本在線答疑系統(tǒng)經過前期需求分析、概要設計、詳細設計、以及編碼已基本完成,而且初步運行順利。但作為一個成熟的系統(tǒng)還需經過嚴格的測試才能說明。軟件測試并不僅僅只針對于軟件的產品本身,不是系統(tǒng)運行時沒有出現(xiàn)大的錯誤就是一個成功的產品。軟件測試還注重于軟件的開發(fā)過程。軟件系統(tǒng)是否嚴格的遵循需

91、求也是測試的關鍵。</p><p>  本系統(tǒng)在開發(fā)過程中經歷過單元測試、功能模塊測試、系統(tǒng)集成測試?,F(xiàn)將系統(tǒng)部分主要功能測試情況進行簡要的闡述。</p><p>  6.2主要功能部分測試分析</p><p>  6.2.1注冊部分測試</p><p>  在本系統(tǒng)的注冊頁面中為了進一步的確保注冊信息的合法和有效性,減少與數(shù)據(jù)庫之間的交互次

92、數(shù)過多的壓力,主要采用ajax技術來實現(xiàn)對輸入數(shù)據(jù)的驗證。若輸入信息不能通過驗證則無法提交到后臺對其處理。</p><p><b>  如下圖6.1所示。</b></p><p>  圖6.1 測試ajax驗證用戶名</p><p>  當在文本框中輸入一個已經注冊過的用戶名時,該頁面就會顯示如上圖所示的錯誤提示信息。該信息的出現(xiàn)是因為在鼠標離

93、開文本框時觸發(fā)了ajax,它會對輸入的信息與數(shù)據(jù)庫中的信息進行比較,如沒有該用戶則顯示用戶名可用,若該用戶已存在,則顯示上述的錯誤提示信息。</p><p>  6.2.2 課程搜索測試</p><p><b>  圖6.2 測試搜索</b></p><p>  當點擊“按課程名”進行搜索時,系統(tǒng)會通過輸入的課程信息在數(shù)據(jù)庫中查找。若找到了相匹

94、配的項目則返回。若沒有找到,則會提示沒有該課程信息。如下所示找到相應的課程。需要說明的一點是該查詢支持模糊查詢,因為對于課程的信息不是每個人都了解的很詳細,像課程編號之類的信息只有管理人員或老師知道詳情。</p><p><b>  圖6.3 測試結果</b></p><p>  6.2.3 權限控制測試</p><p>  在本系統(tǒng)中對于未成

95、功登錄本系統(tǒng)的用戶是不可以參與問題討論以及與提問相關的活動。在本系統(tǒng)中如果未成功登錄就想查看問題相關的信息,系統(tǒng)會自動的跳轉至登陸頁面。提示用戶登錄本系統(tǒng),或注冊用戶。該權限控制是由攔截器實現(xiàn)的。</p><p>  在本系統(tǒng)中雖然管理員用戶的登錄入口地址是相同的,但是不同權限的管理員登錄之后的主顯示頁面是不同的。在超級管理員的顯示頁面會有對普通管理員的管理項目,但是在普通管理員的主顯示頁面卻沒有。如6.4所示為

96、URole=3即超級管理員的顯示頁面。</p><p>  圖6.4 超級管理員</p><p>  如圖6.5所示為URole=2即普通管理員的主顯示頁面。</p><p>  圖6.5 普通管理員</p><p>  如上圖6.4與6.5所示紅色矩形框中的相關管理內容便是兩者因權限身份的不同,而顯示出的不同主頁面。</p>

97、<p>  如圖6.6所示在管理員用戶任命老師的操作中,若該用戶為學生,則顯示如圖6.7中所示的提示信息。判斷的依據(jù)便是檢查該用戶是否選修了某門課程,若選擇了則認定為學生用戶。否則為教師用戶。只有選擇了認定為教師的用戶此操作才可以成功。</p><p><b>  圖6.6 用戶列表</b></p><p><b>  圖6.7 設置老師</

98、b></p><p><b>  第七章 項目評價</b></p><p>  7.1 項目功能總結</p><p>  本系統(tǒng)利用計算機網(wǎng)絡資源,主要實現(xiàn)了在高校教學過程中教師與學生的互動交流功能。解決了教師學生在交流過程中因時間、地點等因素帶來的交流障礙問題,使得教師與同學之間的交流更加的順暢、及時、便捷。主要實現(xiàn)的功能有學生用戶的

99、提問以及查看回復、參與討論、教師用戶處理申請、解決問題、添加學生、管理員用戶添加教師、刪除教師、添加課程、刪除課程等功能。</p><p>  7.2 項目中使用到的技術</p><p>  本系統(tǒng)的開發(fā)過程中用到了許多當前軟件開發(fā)過程中的主流開發(fā)技術。</p><p>  前臺頁面主要采用了html、jsp技術,頁面整體采用div+css布局。采用該布局的好處在于

100、:</p><p> ?、贉p少頁面的代碼量,能夠提高頁面的訪問速度。</p><p> ?、跇邮奖砼c代碼分離,使頁面看起來比較整潔。</p><p> ?、墼O計出的頁面顯示效果比較好</p><p>  該項目中采用了現(xiàn)在開發(fā)過程中常用的strtus2框架技術,采用該技術的優(yōu)點在于:</p><p> ?、夙撁嬷g參數(shù)

101、的傳遞比較方便。</p><p> ?、谔峁┝嗽S多比較常用的攔截器。 </p><p><b> ?、垡子跍y試。</b></p><p>  本項目中還使用了spring技術,將編寫好的action類統(tǒng)一交給spring來管理。其強大的依賴注入功能,避免了在編寫代碼時手動new對象的過程,極大的加快了開發(fā)的速度。</p>

102、<p>  除上述技術之外還用到了數(shù)據(jù)庫連接池技術、ajax技術、以及利用攔截器來實現(xiàn)權限控制等當前主流的一些技術。</p><p>  7.3項目中的不足之處</p><p><b> ?、偌夹g不足</b></p><p>  在本項目的開發(fā)過程中由于知識儲備不足,對當前主流的框架Hibernate掌握的不是很好,所以未使用其相關

103、的技術。導致在本項目開發(fā)過程中涉及到與數(shù)據(jù)庫交互方面的操作時,編寫代碼量大,代碼不夠精簡。在sql語句優(yōu)化方面知識掌握不夠,使得sql的執(zhí)行效率低。</p><p>  在本項目的開始之初擬采用jmf技術實現(xiàn)在線視頻答疑聊天室的功能,但是由于對該技術掌握的不是很清楚,所以導致獲取的視頻質量不是很好,而且視頻有卡頓的現(xiàn)象,最終不得以放棄了該功能的實現(xiàn)。</p><p><b>  

104、②項目功能不足</b></p><p>  在本系統(tǒng)中教師只能有管理員來指定,注冊用戶的默認角色為學生用戶,這就為教師用戶帶來不便之處。</p><p>  在該系統(tǒng)中問題的審核以及刪除工作都是由管理員權限來處理的,使得管理員的任務太過于繁重。</p><p>  本系統(tǒng)還存在著教師用戶與管理員用戶功能重疊的問題,使得一旦出現(xiàn)工作失誤很難界定各自的責任劃

105、分。</p><p><b>  第八章 個人總結</b></p><p>  經過幾個月的努力畢業(yè)設計終于接近了尾聲,在過去的這些日子里讓我對大學四年里學習到的知識有了更深一層的理解。在沒有開始做畢業(yè)設計之前我自己始終認為畢業(yè)設計只是對過去四年學習成果的一次檢測與展示,但經過這些天在做設計的過程中我漸漸的發(fā)現(xiàn)我之前的觀點有點片面。畢業(yè)設計不僅是對以前所學知識的熟練應

106、用,也是一次查缺補漏的過程。做畢業(yè)設計的這些天使我充分的認識到自己在知識上的不足,有很多知識急需學習,如hibernate、spring等。通過這次畢業(yè)設計使我明白了,軟件行業(yè)新技術,新思想迭出不窮,要想從事軟件行業(yè)就必須要有“活到老,學到老”決心。</p><p>  我曾經以為四年時間是一個漫長的過程,但現(xiàn)在我深刻的認識到時間過得是多么的飛快,轉眼之間大學生活就要結束了。我很高興在我最美好的年紀里遇見同樣美好

107、的老師與同學,一起見證我的成長,分享我的喜悅。</p><p><b>  謝 辭</b></p><p>  在畢業(yè)設計期間使我對同學之間的友誼有了新的認識,同學之間相互幫助,相互鼓勵,有什么問題大家一起想辦法解決。因此,在這里我非常感謝幫助過我的同學們。</p><p>  在此我還要感謝我的指導老師XXX老師,在此次畢業(yè)設計的過程中曾經遇

108、到過很多的困難,幸得張教師的悉心指導才使得我的畢業(yè)設計能夠順利的完成。</p><p><b>  [參考文獻]</b></p><p>  [1]. 任勝兵等編著. 《軟件工程》[M]. 北京:清華大學出版社出版社. 2004年5月</p><p>  [2]. 薩師煊等編著. 《數(shù)據(jù)庫系統(tǒng)概論》[M]. 北京:高等教育出版社. 2004

109、年12月</p><p>  [3]. 何慧容編著. 《數(shù)據(jù)庫應用基礎與實用教程——VF》[M]. 北京:清華大學出版社出版社. 2003年9月</p><p>  [4]. 耿祥義,張躍平編著.《Java2 實用教程》[M].2版 北京:清華大學出版社.2006</p><p>  [5]. 林銳編著.《軟件工程思想》[M]. 西安:西安電子科技大學出版社,

110、2001.</p><p>  [6]. 孫良軍,胡秀娥著. 《HTML+CSS+JavaScript》[M]. 北京:清華大學出版社.2011年6月</p><p>  [7]. 毛養(yǎng)紅.在線答疑系統(tǒng)的設計與實現(xiàn)[D]. 廣州:華南理工大學.2010年5月</p><p>  [8]. 韓璐.基于MVC模式的在線答疑系統(tǒng)的設計與實現(xiàn)[D].遼寧:遼寧科技大學.20

溫馨提示

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

最新文檔

評論

0/150

提交評論