版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 隨著家長對孩子教育的重視程度越來越高,家教也越來越受家長的青睞,因?yàn)樗梢杂嗅槍π缘貑为?dú)授課,能顯著提高學(xué)生學(xué)習(xí)的效果。同時(shí)互聯(lián)網(wǎng)的興起,對教育的形式也產(chǎn)生了重大影響,為此基于B/S的家教平臺應(yīng)運(yùn)而生。</p><p> 論文基于B/S架構(gòu), 采用MVC開發(fā)模式,使用JAVA語言和ORACLE數(shù)
2、據(jù)庫,以TOMCAT作為WEB服務(wù)器,結(jié)合SSH框架進(jìn)行整合,開發(fā)了基于JavaEE的開放式家教服務(wù)平臺。平臺前端以JSP實(shí)現(xiàn)與用戶交互界面,主要實(shí)現(xiàn)了注冊用戶對個(gè)人信息的管理、教員和學(xué)員的雙向搜索?教員和學(xué)員需求信息的發(fā)布、學(xué)員對教員進(jìn)行評價(jià)、注冊用戶發(fā)主題帖進(jìn)行相關(guān)討論等功能;平臺后端的業(yè)務(wù)邏輯用Java語言實(shí)現(xiàn)。</p><p> 平臺為學(xué)員與教員提供了雙方信息交流的平臺,方便學(xué)員與教員之間尋找適合自身的
3、服務(wù),同時(shí)提供家教資源共享等相關(guān)資訊。</p><p> 關(guān)鍵詞:家教服務(wù)平臺;信息交流;B/S;JAVA;ORACLE </p><p><b> ABSTRACT</b></p><p> With the rising importance of parents on children's education, tutors
4、 and parents of all ages, because it can be targeted to individual instruction, can significantly enhance student learning results. At the same time the rise of the Internet, also had a major impact on education, family
5、education platform based on b/s came into being.</p><p> Papers based on b/s structure, using MVC model, using the JAVA language and the ORACLE database, using TOMCAT as WEB server, integration with SSH fra
6、mework, developed open tutoring service based on JavaEE platform. Platform implementation and user interface front-end to JSP, mainly for registered users for personal information management, teachers and students of bi-
7、directional search, and demand information of faculty and students publish to evaluate teachers, students, theme-related features s</p><p> Platform for students and teachers to provide a platform for the e
8、xchange of information between the two sides, between students and teachers looking for its own services, while providing tutoring resource sharing and other related information.</p><p> Keywords: family ed
9、ucation services platform; information exchange;b/s; java; oracle</p><p><b> 目 錄</b></p><p><b> 第1章 緒論1</b></p><p> 1.1 選題的背景及意義1</p><p>
10、 1.2 國內(nèi)外研究現(xiàn)狀1</p><p> 1.3 課題的研究內(nèi)容2</p><p> 1.4 論文的組織3</p><p> 第2章 相關(guān)技術(shù)介紹4</p><p> 2.1 JSP簡介4</p><p> 2.1.1 JSP內(nèi)置對象4</p><p> 2.1.2
11、JSP頁面5</p><p> 2.2 Ajax技術(shù)6</p><p> 2.3 jQuery和Json7</p><p> 2.4 SSH技術(shù)簡介7</p><p> 2.5 Myeclipse安裝9</p><p> 2.6 配置Tomcat9</p><p> 2.
12、7 Oracle數(shù)據(jù)庫9</p><p> 2.7.1 Oracle簡介9</p><p> 2.7.2 Oracle的使用10</p><p> 2.8 本章小結(jié)10</p><p> 第3章 家教平臺的分析11</p><p> 3.1總體需求分析11</p><p>
13、 3.1.1 功能需求11</p><p> 3.1.2 家教平臺性能需求分析12</p><p> 3.2 數(shù)據(jù)安全分析12</p><p> 3.3 界面需求分析13</p><p> 3.3.1 平臺名稱13</p><p> 3.3.2 界面布局13</p><p&g
14、t; 3.4 家教平臺可擴(kuò)展分析14</p><p> 3.5 本章小結(jié)14</p><p> 第4章 家教平臺的設(shè)計(jì)15</p><p> 4.1 平臺總體設(shè)計(jì)15</p><p> 4.2 功能詳細(xì)設(shè)計(jì)16</p><p> 4.2.1 前臺功能設(shè)計(jì)16</p><p&g
15、t; 4.2.2 后臺功能設(shè)計(jì)16</p><p> 4.3 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)17</p><p> 4.3.1 數(shù)據(jù)需求17</p><p> 4.3.2 數(shù)據(jù)庫概念設(shè)計(jì)17</p><p> 4.3.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)21</p><p> 4.3.4 數(shù)據(jù)庫表設(shè)計(jì)22</p>
16、<p> 4.4 本章小結(jié)25</p><p> 第5章 家教平臺的實(shí)現(xiàn)26</p><p> 5.1 開發(fā)環(huán)境26</p><p> 5.1.1 硬件環(huán)境26</p><p> 5.1.2 軟件環(huán)境26</p><p> 5.2 運(yùn)行環(huán)境26</p><p&g
17、t; 5.3 平臺開發(fā)結(jié)構(gòu)26</p><p> 5.3.1 MVC體現(xiàn)27</p><p> 5.3.2 表單亂碼設(shè)計(jì)27</p><p> 5.3.3 相關(guān)的xml配置文件27</p><p> 5.4 平臺主界面28</p><p> 5.5 前臺功能模塊實(shí)現(xiàn)29</p>&
18、lt;p> 5.5.1 導(dǎo)航條和Log模塊29</p><p> 5.5.2 網(wǎng)站公告模塊29</p><p> 5.5.3 用戶注冊模塊30</p><p> 5.5.4 用戶登錄模塊33</p><p> 5.5.5 用戶信息展示模塊34</p><p> 5.5.6 咨詢中心模塊35
19、</p><p> 5.5.7 友情鏈接模塊35</p><p> 5.5.8 搜索模塊35</p><p> 5.5.9 客服中心模塊37</p><p> 5.6 后臺功能模塊實(shí)現(xiàn)37</p><p> 5.6.1 管理模塊顯示37</p><p> 5.6.2 賬號信
20、息管理38</p><p> 5.6.3 基本信息管理39</p><p> 5.6.4 聯(lián)系方式管理40</p><p> 5.6.5 邀請管理41</p><p> 5.7 論壇模塊實(shí)現(xiàn)42</p><p> 5.8 本章小結(jié)43</p><p> 第6章 結(jié)論與展望
21、44</p><p><b> 6.1 結(jié)論44</b></p><p><b> 6.2 展望44</b></p><p><b> 參考文獻(xiàn)45</b></p><p><b> 致謝46</b></p><p&g
22、t;<b> 第1章 緒論</b></p><p> 1.1 選題的背景及意義</p><p> 家教服務(wù)是當(dāng)今的一個(gè)熱門的服務(wù)種類,特別是在城市地區(qū),有著巨大的市場。隨著人們生活水平的不斷提高和對高質(zhì)量教育的需要,家教需求也將持續(xù)不斷的增長。同時(shí),越來越多的教師、在校師范類大學(xué)生等具備某些特長的人士也都希望能夠以專職或兼職的方式從事家教的工作,額外發(fā)揮對教育事
23、業(yè)的貢獻(xiàn)。</p><p> 針對這個(gè)雙方的需求,家教市場正在蓬勃發(fā)展,但是目前的家教市場也帶來了幾方面的問題:第一,尋求家教服務(wù)者或者學(xué)生家長往往不知道如何找到好的家教資源,家長往往是通過身邊的熟人、朋友等方式來尋找家教,這樣的方式不但難以保證對口的家教服務(wù),而且選擇的余地也很??;第二,愿意提供家教服務(wù)的教師或大學(xué)生往往不知道如何去尋找合適的家教服務(wù)需求者,往往都是通過張貼海報(bào)、設(shè)攤等方式進(jìn)行宣傳,造成宣傳面
24、小,或者學(xué)生不能完全對口等情況;第三,家教服務(wù)還具有地域特征,一般對于教師上門進(jìn)行家教服務(wù)或者學(xué)生上門的家教服務(wù)的方式都希望能夠在地域性上比較匹配,所以希望能選擇的資源相對較多;第四,對于家教服務(wù)缺乏監(jiān)管,如果能有一個(gè)中介機(jī)構(gòu)能夠及時(shí)得到受服務(wù)方對教師家教服務(wù)的反饋,進(jìn)行評級和評分,不但能提高服務(wù)質(zhì)量,還能增加服務(wù)的可信度,促進(jìn)家教產(chǎn)業(yè)的良性發(fā)展。</p><p> 本文所論述的“家教服務(wù)平臺”通過運(yùn)用java
25、 ee開發(fā)方面的知識,建立起一個(gè)網(wǎng)絡(luò)的家教服務(wù)平臺,該平臺以一個(gè)中介方式提供家教雙方的服務(wù),充分發(fā)揮網(wǎng)絡(luò)的方便和快捷性,增加了家教服務(wù)的靈活性,使服務(wù)者和被服務(wù)者各取所需。本文內(nèi)容涉及到服務(wù)器的配置、網(wǎng)頁開發(fā)設(shè)計(jì)、程序設(shè)計(jì)、數(shù)據(jù)庫運(yùn)用等多方面的知識,較為完整地體現(xiàn)了平臺開發(fā)過程中的綜合規(guī)劃和設(shè)計(jì)思路以及技術(shù)細(xì)節(jié)、問題的解決辦法。</p><p> 1.2 國內(nèi)外研究現(xiàn)狀</p><p>
26、 研究家教服務(wù)平臺,追其根源必須研究整體的教育狀況,在我國目前的教育還是以 “應(yīng)試教育”為主, 從教育規(guī)律和人才成長規(guī)律來看,“應(yīng)試教育”在認(rèn)識上存在著兩個(gè)誤區(qū),一是忽視了對大多數(shù)學(xué)生的培養(yǎng),只對少數(shù)人服務(wù)??陀^現(xiàn)實(shí)決定了只有少數(shù)人能夠通過考試進(jìn)入大學(xué),片面強(qiáng)調(diào)和追求升學(xué)率,必將犧牲大多數(shù)人的利益,從而使基礎(chǔ)教育成為面向少數(shù)人的教育;二是"應(yīng)試教育"在教育內(nèi)容上忽視德育、體育、美育和生產(chǎn)勞動教育
27、,只重知識傳授,忽視能力與心理素質(zhì)培養(yǎng),它所追求的是片面發(fā)展,而不是全面發(fā)展。為了考試而學(xué),是違背人才培養(yǎng)的規(guī)律的?!皯?yīng)試教育”環(huán)境下的學(xué)生知識面比較狹窄,缺乏知識與知識之間的聯(lián)系;學(xué)生缺乏自己可以支配的時(shí)間與空間, 他(她)到了學(xué)校,其時(shí)間與空間都給老師占滿了,到了家里,他(她)的時(shí)間又給家長占滿了。一個(gè)缺乏自己可以自由支配時(shí)間與空間的人,很難有創(chuàng)新;學(xué)生在硬的領(lǐng)域,比如基本知識與基本技能比較強(qiáng),而在軟的領(lǐng)域,如自信心不夠,
28、好奇心和求知欲不強(qiáng),缺乏積極的情感體驗(yàn),缺乏社會責(zé)任感與使命感。實(shí)際情況是,我們的學(xué)生并不輸在起跑線上,而是輸在終點(diǎn)線上,也就是我們的學(xué)生缺乏后勁,缺乏創(chuàng)新精神。從時(shí)間分配上</p><p> 反觀當(dāng)今世界,隨著時(shí)代的發(fā)展,人們教育觀念的更新,智力已不再是能力的同義詞,現(xiàn)實(shí)問題的復(fù)雜化和綜合程度的提高以及知識更新速度的加快,要求人不僅要具備獨(dú)立解決問題的能力,更要具備與他們之間的合作能力,處理問題的應(yīng)變能力、持
29、續(xù)性的學(xué)習(xí)能力、自我激勵(lì)能力和自我提升的能力等素質(zhì)。簡言之,社會需要的是全面的綜合性高素質(zhì)人才。顯然,“應(yīng)試教育”這種教育傾向不能適應(yīng)社會人才培養(yǎng)的需要,而且還會有礙于教育事業(yè)的健康發(fā)展,尤其是基礎(chǔ)教育的發(fā)展,而國內(nèi)與國外的教育差別重點(diǎn)也正是在這一塊了。</p><p> 第八屆全國人民代表大會第四次會議通過的《中華人民共和國國民經(jīng)濟(jì)和社會發(fā)展九五計(jì)劃和2010年遠(yuǎn)景目標(biāo)綱要》,在其“科教興國戰(zhàn)略”部分中,明確
30、提出要“改革人才培養(yǎng)模式,使應(yīng)試教育轉(zhuǎn)向全面素質(zhì)教育”。于是,到此為止,“素質(zhì)教育”終于從一種行政性的號召,轉(zhuǎn)變?yōu)榫哂幸欢ǚ杉s束力的國家意志,培養(yǎng)德、智、體等方面全面發(fā)展的人。我國的學(xué)校管理可以借鑒英、美國家,變“授人以魚”為“授人以漁”,培養(yǎng)學(xué)生自主學(xué)習(xí)習(xí)慣,充分張揚(yáng)個(gè)性,給學(xué)生以自由發(fā)展的時(shí)間和空間,促使學(xué)校教育、家庭教育和社會教育三位一體,全方位地培養(yǎng)學(xué)生的開拓和創(chuàng)造精神,真正實(shí)現(xiàn)素質(zhì)教育,培養(yǎng)能力型人才。</p>
31、<p> 綜上所述,盡管越來越強(qiáng)調(diào)要培養(yǎng)學(xué)生自主學(xué)習(xí)習(xí)慣,但是國內(nèi)家教服務(wù)任是正處于蓬勃發(fā)展的階段,而國外的開放式教育則導(dǎo)致家教服務(wù)的研究相對比較局限了。</p><p> 1.3 課題的研究內(nèi)容</p><p> 課題研究的內(nèi)容是家教服務(wù)平臺。針對目前家教服務(wù)市場的現(xiàn)狀,平臺本著為尋求家教服務(wù)者和提供家教服務(wù)者的雙方提供一個(gè)安全、便利的交流環(huán)境為目標(biāo),以全心全意為家教事
32、業(yè)做貢獻(xiàn)為宗旨。平臺能夠給需要家教服務(wù),卻不知道如何找到好的家教資源的學(xué)生或家長提供一個(gè)完善的信息資源站,學(xué)生或家長可以通過平臺找到對口的、安全放心的家教服務(wù)。同時(shí),也給愿意提供家教服務(wù)的教師或大學(xué)生提供了一個(gè)完善的信息資源站,可以在平臺上找到合適的家教服務(wù)需求者,既能保證對口的家教服務(wù),又能保證人身和財(cái)產(chǎn)安全,可以全心全意的投入到家教事業(yè)而不用擔(dān)心其他。平臺能夠?yàn)閷W(xué)生盡可能全面的了解教師的基本情況,找到自己心中認(rèn)為最合適的教師來指導(dǎo)自
33、己學(xué)習(xí),教師也可以知道自己的輔導(dǎo)的學(xué)生,為了更能夠完善自己,了解學(xué)生的特點(diǎn)。平臺很重視各類家教服務(wù)的信息資源,但是最為重視的卻是雙方的個(gè)人資料安全以及對教員和學(xué)員的評價(jià)。因?yàn)槠脚_的目標(biāo)是保證在安全可靠的環(huán)境下,提供值得雙方信賴的家教服務(wù),為家教事業(yè)貢獻(xiàn)出一份力量。</p><p><b> 1.4 論文的組織</b></p><p> 本文共分為六章,具體的內(nèi)容安
34、排如下:</p><p> 第1章是緒論部分,簡略陳述了研究此平臺的時(shí)代背景及其意義,同時(shí)對國內(nèi)外研究的現(xiàn)狀也做了粗略的對比。</p><p> 第2章是相關(guān)的技術(shù)理論部分,主要對此平臺在研究開發(fā)過程所使用到的相關(guān)技術(shù)作了簡單的陳述,通過本章可以了解到研究此平臺的技術(shù)構(gòu)造。</p><p> 第3章是平臺的需求分析部分,本章對實(shí)現(xiàn)平臺的需求進(jìn)行了全面的分析,從
35、用戶及管理者為典型代表對平臺進(jìn)行分析,深入了解平臺的需求。</p><p> 第4章是平臺的設(shè)計(jì)部分,主要陳述了如何實(shí)現(xiàn)該平臺的整體設(shè)計(jì),相關(guān)數(shù)據(jù)庫以及某個(gè)功能模塊的設(shè)計(jì)。</p><p> 第5章是平臺的實(shí)現(xiàn)部分,在有了前面設(shè)計(jì)及需求的分析的基礎(chǔ)上,在本章主要描述了實(shí)現(xiàn)該平臺的具體環(huán)境及過程。</p><p> 第6章是結(jié)論與展望,簡要總結(jié)了該平臺所完成的工
36、作以及存在的不足,同時(shí)描述了對平臺的未來展望。</p><p> 第2章 相關(guān)技術(shù)介紹</p><p><b> 2.1 JSP簡介</b></p><p> 2.1.1 JSP內(nèi)置對象</p><p> JSP內(nèi)置對象是指在JSP頁面系統(tǒng)中已經(jīng)默認(rèn)內(nèi)置的Java對象,這些對象不需要開發(fā)人員顯式聲明即可使用。其一
37、共有9大內(nèi)置對象,在該平臺在開發(fā)過程中需使用到其中的7大內(nèi)置對象,每一個(gè)內(nèi)置對象都有其自身的特點(diǎn)及作用,簡述如下:</p><p> 1.application對象</p><p> application對象的所屬類型是javax.servlet.ServletContext。它主要用于多個(gè)用戶間保持?jǐn)?shù)據(jù),所有用戶都共享一個(gè),服務(wù)器啟動后,一旦創(chuàng)建了application對象,那么該
38、對象將會永遠(yuǎn)保持下 去,直到服務(wù)器關(guān)閉為止。在開發(fā)過程中運(yùn)用到的公共數(shù)據(jù)均可以通過使用application對象來實(shí)現(xiàn)共享。調(diào)用getServletConfig()或getContext()方法后獲取到ServletContext對象,通過返回的對象則可以獲取對應(yīng)的共享數(shù)據(jù)值。</p><p> 2.exception對象</p><p> exception對象的所屬類型是javax
39、.servlet.ServletConfig。每一個(gè)程序發(fā)生錯(cuò)誤時(shí)都會產(chǎn)生異常,JSP也不例外,當(dāng)其頁面發(fā)生錯(cuò)誤時(shí),肯定會產(chǎn)生異常,而exception就是用來針對異常作出相應(yīng)處理的對象。在開發(fā)該平臺過程中有很多次的調(diào)試,多次都在使用exception對象,當(dāng)然在使用之前必須在JSP頂端通過使用page命令來設(shè)定其使用權(quán)限,如<%@ page isErrorPage="true"%>,否則在編譯過程中會
40、出錯(cuò)。</p><p><b> 3.out對象</b></p><p> out對象的所屬類型是java.servlet.jsp.JspWriter。該對象主要用于向客戶端輸出的服務(wù)器回響的不同內(nèi)容,它的作用相當(dāng)于PrintWriter對象,但使用PrintWriter對象需要事前進(jìn)行聲明,而out對象則可以直接進(jìn)行調(diào)用。該平臺在開發(fā)JSP頁面過程中主要調(diào)用ou
41、t.print( )方法或out.println( )方法進(jìn)行對客戶端的內(nèi)容輸出,兩個(gè)方法均可以向客戶端輸出一行信息,但前者輸出時(shí)不換行,后者則輸出后換行。</p><p> 4.request對象</p><p> request對象在開發(fā)該平臺的過程中是使用次數(shù)最多的,他所屬的類型可以根據(jù)協(xié)議的不同而變換,使用HTTP協(xié)議時(shí)屬于javax.servlet.HttpServletRe
42、quest,而使用其他協(xié)議時(shí)則屬于javax.servlet.ServletRequest。每次當(dāng)用戶向服務(wù)器發(fā)出請求時(shí)都將觸發(fā)request對象,用戶可以通過不同的方式在發(fā)出請求的同時(shí)傳遞數(shù)據(jù),比如使用GET方式。而服務(wù)器在服務(wù)端則可以通過調(diào)用request的方法來對用戶提交的數(shù)據(jù)進(jìn)行提取。該平臺開發(fā)過程中多次使用到setAttribute( )、request.getAttribute( )和getParameter( String
43、 name)等方法。setAttribute( )方法對數(shù)據(jù)進(jìn)行提交,而request.getAttribute( )則是對應(yīng)它的讀取方法。getParameter( String name)則是通過傳遞一個(gè)鍵值名來讀取對應(yīng)的值。</p><p> 5.response對象</p><p> response對象與request對象對應(yīng),在開發(fā)該平臺的過程中使用次數(shù)不亞于request
44、對象。response對象是用于服務(wù)器對客戶端進(jìn)行回響,它的所屬類型也是根據(jù)協(xié)議不同而變化的,當(dāng)使用HTTP協(xié)議時(shí),類型是javax.servlet.HttpServlet Response,使用其他協(xié)議時(shí)則是javax.servlet.ServletResponse。在開發(fā)該平臺過程中通過使用其方法void reset()來對buffer中的內(nèi)容進(jìn)行清空;使用getCharacterEncoding()來獲取響應(yīng)的字符編碼格式,使用s
45、etCharacterEncoding(String charset)則是設(shè)置響應(yīng)使用的字符編碼格式,如果獲取和響應(yīng)的編碼格式?jīng)]有保持一致,則響應(yīng)在JSP頁面上的內(nèi)容會出現(xiàn)亂碼;通過使用setContentType(String content) 來對響應(yīng)的內(nèi)容進(jìn)行類型設(shè)置;使用sendRedirect(String location)來向服務(wù)器發(fā)送一個(gè)重定向至參數(shù)位置的請求。通常在進(jìn)行JSP頁面開發(fā)的過程中在每一個(gè)JSP的頂部都會加上
46、response.setC</p><p> 6.session對象</p><p> session對象所屬的類型是javax.servlet.http.HttpSession。它是在發(fā)生HTTP請求時(shí)被創(chuàng)建的,它的創(chuàng)建代表這一個(gè)會話對象的產(chǎn)生。在該平臺開發(fā)的過程中,用的最多的方法是setMaxInactiveInterval( int interval),它用于設(shè)置最大的sessi
47、on不活動的時(shí)間,若超過這個(gè)時(shí)間則會話將會失效,時(shí)間單位為秒。在平臺中,若用戶長時(shí)間未進(jìn)行任何操作且沒有注銷登錄,則通過該方法設(shè)置的時(shí)間就被作為自動注銷的時(shí)間依據(jù)。除了上述方法外,平臺開發(fā)過程中主要還使用方法getAttribute(String name) 來獲取指定名字的屬性和方法removeAttribute(String name)來刪除指定名字的屬性,也通過使用方法setAttribute(String name, Java.
48、lang.Object object)來進(jìn)行指定名字屬性值設(shè)置,并存儲在該對象中。</p><p> 7.pageContext對象</p><p> pageContext對象在平臺過程中使用的不多,主要是用于對JSP頁面內(nèi)所有的對象及名字空間的訪問,因?yàn)樗梢栽L問到本頁所在的SESSION,同時(shí)也可以取本頁面所在的application的某一屬性值,相當(dāng)于頁面中所有功能的集大成者,
49、雖然使用起來較為直接,但是因其所集合的方法太多導(dǎo)致使用起來不甚方便。</p><p> 2.1.2 JSP頁面</p><p> 該平臺的所有前端交互均為JSP頁面,目前用于前端交互的開發(fā)方式用很多種,而該平臺之所以采用JSP主要是出于如下考慮:</p><p> 1、JSP將內(nèi)容的生成和顯示進(jìn)行分離,使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XM
50、L標(biāo)識來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識或者小腳本來生成頁面上的動態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識JavaBeans 組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識和Beans中,那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。在服務(wù)器端,JSP引擎解釋JSP標(biāo)識和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,
51、或者包含文件),并且將結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。</p><p> 2、絕大多數(shù)JSP頁面依賴于可重用的,跨平臺的組件(JavaBeans或者Enterprise JavaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客
52、戶團(tuán)體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p> 3、JSP采用了標(biāo)識簡化頁面開發(fā),Web頁面開發(fā)人員不會都是熟悉腳本語言的編程人員。而JSP技術(shù)則封裝了許多的功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識中進(jìn)行動態(tài)內(nèi)容生成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識能夠訪問和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet
53、,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。通過開發(fā)定制化標(biāo)識庫,JSP技術(shù)是可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來工作。JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持企業(yè)級的分布式應(yīng)用。作為采用Java技術(shù)家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個(gè)組成部分,JSP技術(shù)能夠支
54、持高度復(fù)雜的基于Web的應(yīng)用。由于JSP頁面的內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術(shù)的所有好處,包括健壯的存儲管理和安全性。作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處</p><p> 2.2 Ajax技術(shù)</p><p> Ajax(Asynchronous JavaScr
55、ipt XML)技術(shù)的核心是JavaScript對象XmlHttpRequest。它是一種支持異步請求的技術(shù), 通過XmlHttpRequest可以使用JavaScript向服務(wù)器提出請求并處理響應(yīng),而不阻塞用戶。如平臺注冊功能中的檢查用戶名是否已經(jīng)存在、用戶登錄后馬上注銷時(shí)對主界面的刷新等均使用到了該技術(shù),使用Ajax能夠讓用戶在這些功能結(jié)果反饋之前可以繼續(xù)執(zhí)行其他的操作,而不是處于等待狀態(tài)。使用Ajax主要有三大步驟,具體操作如下所
56、述:</p><p> 1、創(chuàng)建XmlHttp對象,因?yàn)椴煌瑑?nèi)核的瀏覽器對Ajax的支持不同,所以在創(chuàng)建之前必須先通過瀏覽器的window屬性的來判斷其內(nèi)核是IE還是火狐,若是前者創(chuàng)建對象為ActiveXObject("Microsoft.XMLHTTP"),后者則創(chuàng)建為XMLHttpRequest()。</p><p> 2、發(fā)送請求函數(shù),首先調(diào)用XmlHttp對
57、象中的open("GET",url,true)設(shè)置發(fā)送請求的方式,然后調(diào)用onreadystatechange屬性指定響應(yīng)函數(shù),最后調(diào)用send(null)進(jìn)行請求的發(fā)送。 </p><p> 3、判斷返回狀態(tài)并進(jìn)行處理,調(diào)用XmlHttp對象的readyState屬性和status屬性來判斷異步請求是否成功,如readyState=4、status=200則請求成功,然后調(diào)用re
58、sponseText屬性對返回的內(nèi)容進(jìn)行處理。</p><p> 2.3 jQuery和Json</p><p> 該平臺在開發(fā)中采用了jQuery框架,它是一個(gè)優(yōu)秀的JS(Javascript)框架,使用它最直接的效果就是能夠做到寫更少的代碼卻做更多的事情。在平臺的開發(fā)過程中,主要使用了它的選擇器和內(nèi)置函數(shù)。選擇器以簡單少量的代碼實(shí)現(xiàn)對結(jié)點(diǎn)、標(biāo)簽等的快速獲取,如選擇器$(“ID”)能
59、選擇該ID對應(yīng)的結(jié)點(diǎn)、$(“TagName”)能選擇該標(biāo)簽元素進(jìn)行操。而內(nèi)置函數(shù)則是為了更容易的完成動畫效果,如show()和hide()函數(shù),能實(shí)現(xiàn)立即顯示或者以特定的速度顯示,fadeIn()和fadeOut(),或者slideDown()和slideUp()顯示和隱藏元素等。通過使用這些選擇器、內(nèi)置方法以及配合Ajax技術(shù),給平臺的開發(fā)減少了不小的工作量。</p><p> Json可以將JS對象中表示的
60、一組數(shù)據(jù)轉(zhuǎn)換為字符串形式,然后就可以在函數(shù)之間輕松地傳遞這個(gè)字符串。如在該平臺中使用Ajax實(shí)現(xiàn)異步操作時(shí),將字符串從平臺客戶端傳遞給服務(wù)器端程序、從服務(wù)器端回響給前端數(shù)據(jù)等均是使用該方式進(jìn)行傳遞的。組成Json的字符串格式如{“name”:”value”},它是以鍵值對方式存在的。盡管這種格式看起來十分怪異,但是與以XML方式進(jìn)行數(shù)據(jù)傳遞相比,不僅大大提高了可讀性,而且減少了數(shù)據(jù)組成結(jié)構(gòu)的復(fù)雜性。</p><p&g
61、t; 2.4 SSH技術(shù)簡介</p><p> 本平臺開發(fā)采用的是SSH整合技術(shù)。SSH指的是Struts、Spring、Hibernate三大框架的整合,在開發(fā)過程中Struts 的MVC設(shè)計(jì)模式可以使我們的邏輯變得很清晰,Spring 的IOC和AOP可以使我們的平臺在最大限度上解藕,而Hibernate則是實(shí)體對象的持久化,SSH框架直觀如圖2.1所示。</p><p> 典型
62、的JAVAEE三層結(jié)構(gòu)分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和數(shù)據(jù)服務(wù)層,三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問及合法性校驗(yàn)等工作放在中間層處理。客戶端不直接與數(shù)據(jù)庫交互,而是通過組件與中間層建立連接,再由中間層與數(shù)據(jù)庫交互。表現(xiàn)層則是傳統(tǒng)的JSP技術(shù),自1999年問世以來,經(jīng)過多年的發(fā)展,其廣泛的應(yīng)用和穩(wěn)定的表現(xiàn),為其作為表現(xiàn)層技術(shù)打下了堅(jiān)實(shí)的基礎(chǔ)。</p><p> 圖2.1 SSH框架直觀圖</p><
63、;p> 表現(xiàn)層則是傳統(tǒng)的JSP技術(shù),自1999年問世以來,經(jīng)過多年的發(fā)展,其廣泛的應(yīng)用和穩(wěn)定的表現(xiàn),為其作為表現(xiàn)層技術(shù)打下了堅(jiān)實(shí)的基礎(chǔ)。中間層采用的是流行的Spring+Hibernate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分為以下幾種:</p><p> 1、Web層,就是MVC模式里面的“C”(controller),負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表
64、現(xiàn)。在該平臺中本層通過struts來進(jìn)行處理。</p><p> 2、Manage層(服務(wù)層或業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層以DAO層為基礎(chǔ),通過對DAO組件的正面模式包裝,完成系統(tǒng)所要求的業(yè)務(wù)邏輯。DAO層,負(fù)責(zé)與持久化對象交互。該層封裝了數(shù)據(jù)的增、刪、查、改的操作。</p><p> 3、PO(實(shí)體層或持久化層),持久化對象。通過實(shí)體關(guān)系映射工具將關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)映射
65、成對象,很方便地實(shí)現(xiàn)以面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫。該平臺采用Hibernate作為ORM框架,而Spring的作用貫穿了整個(gè)中間層,將Web層、Manage層、DAO層及PO無縫整合,其數(shù)據(jù)服務(wù)層用來存放數(shù)據(jù)。</p><p> 采用Hibernate作為持久層技術(shù),可以完全以面向?qū)ο蟮姆绞竭M(jìn)行系統(tǒng)分析、系統(tǒng)設(shè)計(jì);采用Struts則通過一個(gè)配置文件,即可把握整個(gè)系統(tǒng)各部分之間的聯(lián)系,這對于后期的維護(hù)有著莫大的好處;
66、采用Spring容器代替DAO工廠,通常情況下,引入接口就不可避免需要引入工廠來負(fù)責(zé)DAO組件的生成,而使用Spring可以完全避免使用工廠模式,因?yàn)镾pring就是個(gè)功能非常強(qiáng)大的工廠。</p><p> 2.5 Myeclipse安裝</p><p> 平臺的開發(fā)采用了myeclipse6.5版本。盡管Myeclipse目前的版本已經(jīng)到了10,但是大多數(shù)開發(fā)者依然采用的是6.5版本
67、,不僅因?yàn)樵摪姹疽呀?jīng)具有豐富的開發(fā)框架與插件,而且該版本相對較為穩(wěn)定,開發(fā)過程中可以有效的避免一些不必要的風(fēng)險(xiǎn)。MyEclipse是Eclipse的一個(gè)插件,所以必須先安裝Eclipse才可以安裝MyEclipse。首先安裝JDK運(yùn)行JDK 6.0安裝程序,安裝過程中所有選項(xiàng)保持默認(rèn)。然后配置JDK的環(huán)境變量:</p><p> 新建系統(tǒng)變量JAVA_HOME:C:\Program Files\Java\jdk
68、1.6.0_06;</p><p> 新建系統(tǒng)變量CLASSPATH:.;%JAVA_HOME%\lib;</p><p> 在系統(tǒng)變量Path的值的前面加入以下內(nèi)容:%JAVA_HOME%\bin;</p><p> 接著安裝eclipse,將下載好的eclipse-SDK-3.1.2-win32.zip直接解壓到某個(gè)盤的根目錄,然后解壓即可。然后安裝mye
69、clipse,講下載好的myeclipse可執(zhí)行文件打開,在安裝過程中選擇Eclipse的安裝路徑,其他選項(xiàng)保持默認(rèn)。安裝完畢之后,將MyEclipse安裝目錄下的features和plugins這2個(gè)目錄覆蓋到Eclipse的安裝目錄下即可。</p><p> 2.6 配置Tomcat</p><p> Tomcat是一個(gè)免費(fèi)的開放源代碼的Web應(yīng)用服務(wù)器,平臺在開發(fā)以及測試過程中
70、 使用的均是該服務(wù)器,目前使用最廣的版本是6.0.20,此平臺也是使用了該版本。它是Apache軟件基金會(Apache Software Foundation)開發(fā)的,是一個(gè)小型的輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP程序的首選。之所以在開發(fā)過程中選擇使用它,主要因?yàn)門omcat服務(wù)器在運(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能,而且它還在不斷
71、的改進(jìn)和完善,能被使用的時(shí)間較長,平臺不用擔(dān)心服務(wù)器的更換。Tomcat配置是在Myeclipse6.5環(huán)境里面進(jìn)行的,具體配置如圖2.2所示。</p><p> 2.7 Oracle數(shù)據(jù)庫</p><p> 2.7.1 Oracle簡介</p><p> Oracle是目前最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),被越來越多的用戶在信息系統(tǒng)管理、企業(yè)數(shù)據(jù)處理、Inter
72、net、電子商務(wù)網(wǎng)站等領(lǐng)域作為應(yīng)用數(shù)據(jù)的后臺處理系統(tǒng)。此前流行的版本為Oracle9i。Oracle公司在Oracle9i基礎(chǔ)上,推出了代表數(shù)據(jù)庫最新技術(shù)的數(shù)據(jù)庫系統(tǒng)Oracle 10g。在Oracle 10g中,第一次提出數(shù)據(jù)自動鏡像存儲、數(shù)據(jù)閃回功能以及功能強(qiáng)大的數(shù)據(jù)導(dǎo)出工具、大文件表空間以及表空間組管理等概念。</p><p> 本平臺采用的是Oracle 10g版本,Oracle 10g企業(yè)管理器(Or
73、acle Enterprise Manager)簡稱OEM,是一個(gè)基于Java的框架系統(tǒng),該系統(tǒng)集成了多 個(gè)組件,為用戶提供了一個(gè)功能強(qiáng)大的圖形用戶界面。</p><p> 圖2.2 Tomcat配置圖</p><p> 2.7.2 Oracle的使用</p><p> 安裝好Oracle 10g服務(wù)器后,還需要安裝一個(gè)對應(yīng)的客戶端。為了提高開發(fā)效率,該平臺采
74、用了SQL/PLUS來控制使用Oracle進(jìn)行數(shù)據(jù)庫的開發(fā)。Oracle的sql*plus是與Oracle進(jìn)行交互的客戶端工具。在SQL/PLUS中,可以運(yùn)行SQL/PLUS命令與SQL/PLUS語句。它的功能主要有:(1) 數(shù)據(jù)庫的維護(hù),如啟動,關(guān)閉等,這一般在服務(wù)器上操作.。(2) 執(zhí)行SQL語句執(zhí)行PL/SQL。(3) 執(zhí)行SQL腳本。(4) 數(shù)據(jù)的導(dǎo)出,報(bào)表。(5) 應(yīng)用程序開發(fā)、測試SLQ/PLSQL。(6) 生成新的SQL腳
75、本,供應(yīng)用程序調(diào)用,如安裝程序中進(jìn)行腳本的安裝。(7) 用戶管理及權(quán)限維護(hù)。</p><p><b> 2.8 本章小結(jié)</b></p><p> 本章主要是對平臺開發(fā)過程中所使用到的理論技術(shù)做了一個(gè)概述,開發(fā)該平臺所涉及的技術(shù)有java、 JSP、Oracle、SSH框架整合等。通過本章可以進(jìn)一步的了解平臺的技術(shù)結(jié)構(gòu),同時(shí)通過本章也可以從一個(gè)平臺開發(fā)員的角度去了
76、解該平臺,從而可以深度挖掘該平臺的優(yōu)勢與不足。</p><p> 第3章 家教平臺的分析</p><p><b> 3.1總體需求分析</b></p><p> 3.1.1 功能需求</p><p> 平臺開發(fā)的目標(biāo)是為了向?qū)W員和教員提供一個(gè)開放式的交流環(huán)境,針對不同身份的用戶進(jìn)行分析,平臺該具有的功能包括:(1
77、) 注冊,學(xué)員和教員均可在平臺注冊一個(gè)屬于自身的賬號,其中包含網(wǎng)路昵稱、個(gè)人信息、需求信息等。(2) 用戶信息管理,注冊后的用戶可以修改、刪除、增加自己的個(gè)人信息。(3) 搜索,提供給學(xué)員和教員進(jìn)行雙向搜索,以便更快的查找到符合自身需求的服務(wù)。(4) 邀請預(yù)訂,為了讓離線用戶不錯(cuò)過機(jī)會,注冊用戶可以給符合自身需求的對方發(fā)送邀請預(yù)訂,等對方上線很快能做出回應(yīng)。(5) 評價(jià),有效的競爭能夠提高服務(wù)的質(zhì)量,學(xué)員和教員均能給對方進(jìn)行星級評價(jià),評
78、價(jià)高的用戶將被平臺優(yōu)先推薦。(6) 論壇,注冊用戶可以在論壇進(jìn)行合理的發(fā)言。(7) 廣告,為了給平臺帶來部分的利潤,可以刊登合法的廣告。</p><p> 具體的功能需求如表3-1所示。</p><p> 表3-1 系統(tǒng)功能需求一覽表</p><p> 3.1.2 家教平臺性能需求分析</p><p> 平臺為開放式家教服務(wù)平臺,瀏覽
79、用戶主要集中在學(xué)生、家長、教師等相關(guān)人員,相對并發(fā)瀏覽用戶量不大,故性能需求主要有如下:</p><p> (1) 對Web服務(wù)器的性能要求不高,可以采用了輕量級Web服務(wù)器Tomcat。</p><p> (2) 平臺涉及到學(xué)員和教員的個(gè)人信息,后端開發(fā)語言應(yīng)具有很高的安全性且通過該語言開發(fā)的平臺盡量要易于維護(hù)。</p><p> (3) 操作方面,平臺應(yīng)具
80、有操作簡單、方便等性能。</p><p> 3.2 數(shù)據(jù)安全分析</p><p> 作為一個(gè)中間服務(wù)平臺,涉及到所有注冊用戶中學(xué)員和教員的真實(shí)個(gè)人信息,如果信息泄露,將會給用戶帶去無法預(yù)計(jì)的后果,同時(shí)也會給平臺帶來很大的負(fù)面影響,所以保證平臺數(shù)據(jù)的安全是能夠使平臺得到推廣所必須的條件。因此平臺在數(shù)據(jù)安全方面做了如下分析:</p><p> 1、平臺提供一定的方
81、式讓用戶標(biāo)識自己的身份,在平臺的內(nèi)部記錄著所有合法用戶的標(biāo)識,每次用戶登錄平臺時(shí),會由平臺進(jìn)行核實(shí),通過后才提供其錄。如用戶在進(jìn)行登錄或在對信息進(jìn)行修改等涉及到個(gè)人信息時(shí),平臺會要求輸入對應(yīng)的驗(yàn)證碼等。</p><p> 2、平臺將在數(shù)據(jù)庫設(shè)計(jì)時(shí)為不同的用戶定義不同的數(shù)據(jù)視圖,用以限制用戶的在平臺上的訪問范圍。通過視圖機(jī)制把需要保密的數(shù)據(jù)對無權(quán)訪問這些數(shù)據(jù)的用戶隱藏起來,提供一定程度的安全保護(hù)。該平臺將視圖機(jī)制
82、與授權(quán)機(jī)制結(jié)合起來使用,首先用視圖機(jī)制屏蔽一部分保密數(shù)據(jù),然后在視圖上進(jìn)一步進(jìn)行授權(quán)。這樣能進(jìn)一步的保證數(shù)據(jù)的安全性。</p><p> 3、平臺在進(jìn)行數(shù)據(jù)存儲和傳遞過程中,對數(shù)據(jù)進(jìn)行了一定程度的加密。如用戶密碼采用消息摘要加密方式中的MD5加密,這是一種與消息認(rèn)證碼結(jié)合使用以確保消息完整性的技術(shù)。它主要使用單向散列函數(shù)算法,可用于檢驗(yàn)消息的完整性,和通過散列密碼直接以文本形式保存等。由于平臺運(yùn)行于Web環(huán)境,
83、故除密碼之外的內(nèi)容則采用了公鑰加密,此種加密方式是使用一對密鑰對,一個(gè)公鑰,一個(gè)私鑰,使用公鑰加密的數(shù)據(jù),只有私鑰能解開(可用于加密);同時(shí),使用私鑰加密的數(shù)據(jù),只有公鑰能解開。該平臺使用了公鑰加密中的RSA算法,對數(shù)據(jù)進(jìn)行加密也是保證平臺用戶個(gè)人信息不被竊取或修改的有效手段。</p><p> 4、為了增強(qiáng)服務(wù)器存儲系統(tǒng)的容錯(cuò)能力,服務(wù)器存儲系統(tǒng)將采用Raid磁盤陣列,同時(shí)服務(wù)器也將對用戶的關(guān)鍵信息進(jìn)行備份。
84、</p><p> 3.3 界面需求分析</p><p> 3.3.1 平臺名稱</p><p> 本平臺的名稱為:湖南科技大學(xué)家教服務(wù)平臺。</p><p> 3.3.2 界面布局</p><p> 1、本平臺界面以藍(lán)色為主調(diào),界面中字體大小采用四號字體加粗,輸入和輸出信息的字體大小為五號。主界面布局如圖3
85、.1所示。</p><p> 圖3.1 主界面示意圖</p><p> 2、主界面頂部顯示平臺名稱、平臺LOG、平臺導(dǎo)航,導(dǎo)航有主頁、教員信息、學(xué)員信息等。其中平臺名稱和平臺LOG位于該模塊頂部,導(dǎo)航中的聯(lián)系我們、網(wǎng)站聲明、會員注冊、客服中心位于中部,導(dǎo)航中的主頁、教員信息、學(xué)員信息等位于下部。</p><p> 3、主界面最左邊設(shè)置三個(gè)模塊,分別為用戶注冊、
86、金牌教員和緊急家教。用戶注冊位于模塊頂部提供注冊功能,金牌教員位于中部提供顯示金牌教員的部分信息,緊急家教顯示急需家教服務(wù)的學(xué)員部分信息。</p><p> 4、主界面中間也是設(shè)置三個(gè)模塊,分別為網(wǎng)站公告、最新教員、最新學(xué)員。網(wǎng)站公告位于模塊頂部提供顯示公告內(nèi)容,最新教員位于中部用以顯示最新教員的部分信息,最新學(xué)員位于底部用以顯示最新學(xué)員的部分信息。</p><p> 5、主界面最右邊
87、設(shè)置三個(gè)模塊,分別是用戶登錄、明星教員、推薦學(xué)員。用戶登錄位于模塊最頂部提供登錄功能,明星教員位于中部用以顯示明星教員的部分信息,推薦學(xué)員用以顯示平臺推薦的學(xué)員信息。</p><p> 6、主界面的底部設(shè)置兩個(gè)模塊,分別為資訊中心和友情鏈接。資訊中心包括幼兒教育、基礎(chǔ)教育和熱點(diǎn)培訓(xùn),友情鏈接提供了相關(guān)網(wǎng)站的鏈接地址。</p><p> 通過分析后平臺應(yīng)用瀏覽器交互界面,此種界面不僅直觀
88、和可調(diào)控性好,可以隨時(shí)根據(jù)需要進(jìn)行修改,而且用戶使用起來極為方便,只要通過鼠標(biāo)點(diǎn)擊就能夠使用平臺的大部分功能。</p><p> 3.4 家教平臺可擴(kuò)展分析</p><p> 平臺為網(wǎng)絡(luò)性服務(wù)平臺,隨著網(wǎng)絡(luò)用戶的不斷增長,預(yù)計(jì)該平臺用戶量將會與日俱增,而人們對平臺的操作難度及操作界面的美化程度也會有不同的需求,因此平臺的將來會有不斷的版本更新,所以開發(fā)的平臺應(yīng)該具有很強(qiáng)的可擴(kuò)展性來適應(yīng)
89、將來的版本更新。 </p><p><b> 3.5 本章小結(jié)</b></p><p> 本章從總體、界面、數(shù)據(jù)安全及可擴(kuò)展性四個(gè)方面對平臺的需求進(jìn)行了分析。通過分析可以了解到平臺基本的功能模塊和大致的前端頁面布局,同時(shí)也突出了作為一個(gè)服務(wù)性平臺,必須要著重于數(shù)據(jù)的安全性處理。</p><p> 第4章 家教平臺的設(shè)計(jì)</p>
90、<p> 4.1 平臺總體設(shè)計(jì)</p><p> 平臺設(shè)計(jì)的首要目標(biāo)要保證平臺能夠滿足實(shí)際應(yīng)用的需求,其次要充分考慮方便實(shí)用,只有這樣才能使用戶在進(jìn)行家教服務(wù)的尋找時(shí)真正得益于信息化建設(shè)。再次,還應(yīng)當(dāng)使平臺具有一定的先進(jìn)性,使平臺便于擴(kuò)充。另外,還要采用先進(jìn)的技術(shù),考慮開發(fā)的周期。平臺的總體設(shè)計(jì)目標(biāo)是:基于Web互聯(lián)網(wǎng),提供具有提供家教服務(wù)和需找家教服務(wù),同時(shí)能給學(xué)員用戶和教員用戶一個(gè)安全交流環(huán)
91、境的平臺。在這個(gè)平臺上,學(xué)員能夠方便快捷的尋找到合適的教員,教員也能夠快速的發(fā)布信息,找到合適的學(xué)員。</p><p> 結(jié)合上述應(yīng)用需求和平臺總體設(shè)計(jì)目標(biāo),確定家教服務(wù)平臺主要有以下三大層結(jié)構(gòu)。</p><p> (1)管理員:能夠?qū)τ脩糇缘男畔⑦M(jìn)行審核,對論壇發(fā)布的信息進(jìn)行審核,管理平臺所以用戶的信息等。具體功能示意如圖4.1所示。</p><p> 圖
92、4.1 管理員功能圖</p><p> ?。?)未注冊用戶:能夠查看教員部分信息、查看學(xué)員部分信息、注冊加入、瀏覽平臺論壇上發(fā)布的帖子。具體功能示意如圖4.2所示。</p><p> 圖4.2未注冊用戶功能圖</p><p> ?。?)注冊用戶:能夠發(fā)布需求信息、查看教員/學(xué)員信息、查看預(yù)約信息、修改個(gè)人信息、修改密碼、對教員/學(xué)員評價(jià)并發(fā)表評論、創(chuàng)建帖子、回復(fù)帖
93、子等。具體功能示意如圖4.3所示。</p><p> 圖4.3 注冊用戶功能圖</p><p> 4.2 功能詳細(xì)設(shè)計(jì)</p><p> 4.2.1 前臺功能設(shè)計(jì)</p><p> 通過前臺和后臺分析后,對平臺進(jìn)行詳細(xì)的設(shè)計(jì)。平臺的前臺是與用戶直接交互的,其主要功能結(jié)構(gòu)設(shè)計(jì)如下:</p><p> (1)有完
94、善的對應(yīng)導(dǎo)航條,用戶點(diǎn)擊導(dǎo)航即能進(jìn)入對應(yīng)功能的操作環(huán)境。</p><p> (2)提示未注冊用戶注冊及注冊操作界面。</p><p> (3)顯示網(wǎng)站公告信息。</p><p> (4)提供用戶登錄界面。</p><p> (5)顯示最新教員、最新學(xué)員、金牌教員、明星教員、推薦學(xué)員的部分信息。</p><p>
95、 (6)提供相應(yīng)的友情鏈接。</p><p> (7)提供用戶平臺內(nèi)搜索的界面。</p><p> (8)顯示平臺的服務(wù)協(xié)議內(nèi)容。</p><p> 4.2.2 后臺功能設(shè)計(jì)</p><p> 后臺是對各類信息的管理及邏輯功能實(shí)現(xiàn)等,具體的功能結(jié)構(gòu)設(shè)計(jì)如下:</p><p> (1)實(shí)現(xiàn)用戶注冊功能。<
96、;/p><p> (2)實(shí)現(xiàn)用戶登錄功能。</p><p> (3)實(shí)現(xiàn)注冊用戶的平臺內(nèi)搜索功能。</p><p> (4)實(shí)現(xiàn)注冊用戶的個(gè)人信息修改功能。</p><p> (5)實(shí)現(xiàn)注冊用戶的留言功能。</p><p> (6)記錄對應(yīng)的星級評價(jià)功能。</p><p> (7)即時(shí)更
97、新平臺公共信息。 </p><p> 根據(jù)前臺的功能需求和后臺的功能需求,確定平臺功能模塊圖如圖4.4所示。</p><p> 圖4.4 平臺功能模塊圖</p><p> 4.3 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)</p><p> 4.3.1 數(shù)據(jù)需求</p><p> 針對平臺的用戶和管理,分別對學(xué)員、教員和管理員進(jìn)行詳細(xì)的
98、分析,總結(jié)出如下的需求信息:</p><p> (1)學(xué)員有獨(dú)立的賬號、基本信息、聯(lián)系方式、照片信息,所以要有對應(yīng)的賬號表、基本信息表、聯(lián)系方式表及照片信息表。</p><p> (2)教員有獨(dú)立的賬號、基本信息、聯(lián)系方式、照片信息,所以要有對應(yīng)的賬號表、基本信息表、聯(lián)系方式表及照片信息表。</p><p> (3)學(xué)員有獨(dú)立的教員庫、聯(lián)系過的教員,所以要有對
99、應(yīng)的教員庫表、聯(lián)系教員表。</p><p> (4)學(xué)員和教員都有星級評價(jià),所以要有對應(yīng)的評價(jià)記錄表。</p><p> (5)平臺要有留言反饋,所以要有記錄留言表。</p><p> (6)平臺有網(wǎng)站公告、家教咨詢,所以要有公告記錄、咨詢記錄表。</p><p> (7)平臺有廣告報(bào)價(jià),所以要有價(jià)格記錄表。</p>&
100、lt;p> 4.3.2 數(shù)據(jù)庫概念設(shè)計(jì)</p><p> 將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程稱為概念結(jié)構(gòu)設(shè)計(jì)。本平臺按照自頂向下的設(shè)計(jì)方法,首先得到全局概念結(jié)構(gòu),再逐步細(xì)化,得到完整的概念結(jié)構(gòu)。</p><p><b> 平臺數(shù)據(jù)流圖</b></p><p> 平臺數(shù)據(jù)流包括帳號信息、用戶的個(gè)人信息及其它綜合信
101、息等,數(shù)據(jù)在平臺各個(gè)實(shí)體之間的流動如圖4.5所示。</p><p> 圖4.5 平臺數(shù)據(jù)流圖</p><p><b> 平臺簡要E-R圖</b></p><p> 家教服務(wù)平臺的主要實(shí)體有學(xué)員、教員、管理員、廣告、論壇等,其中管理員能對其它實(shí)體進(jìn)行管理,而學(xué)員和教員之間除了可以相互進(jìn)行評價(jià)外還可以相互預(yù)定。實(shí)體之間具體的關(guān)系模式如圖4.6
102、所示。</p><p> 圖4.6 家教服務(wù)平臺簡要E-R圖</p><p><b> 教員實(shí)體</b></p><p> 教員實(shí)體具有的屬性:教員編號、登錄名、登錄密碼、姓名、性別、地址、MSN、QQ、Email、電話號碼、評價(jià)星級記錄。如圖4.7所示。</p><p><b> 圖4.7 教員實(shí)體&
103、lt;/b></p><p><b> 學(xué)員實(shí)體</b></p><p> 學(xué)員實(shí)體具有的屬性:學(xué)員編號、登錄名、登錄密碼、姓名、性別、地址、MSN、QQ、Email、電話號碼。如圖4.8所示。</p><p><b> 圖4.8 學(xué)員實(shí)體</b></p><p><b>
104、管理員實(shí)體</b></p><p> 管理員實(shí)體具有的屬性:管理員編號、登錄名、登錄密碼。如圖4.9所示。</p><p> 圖4.9 管理員實(shí)體</p><p><b> 論壇實(shí)體</b></p><p> 論壇實(shí)體具有的屬性:帖子編號、主題、內(nèi)容、發(fā)帖人ID、回復(fù)人ID。如圖4.10所示。<
105、/p><p> 圖4.10 論壇實(shí)體</p><p><b> 廣告實(shí)體</b></p><p> 廣告實(shí)體具有的屬性:廣告編號、主題、價(jià)格、內(nèi)容、類型。如圖4.11所示。</p><p> 圖4.11 廣告實(shí)體</p><p> 4.3.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)</p><
106、;p> 邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)是將概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)化為與選用的DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。該平臺選用的是Oracle數(shù)據(jù)庫,屬于關(guān)系數(shù)據(jù)庫,因此應(yīng)該將概念模型轉(zhuǎn)變?yōu)殛P(guān)系模型。概念模型轉(zhuǎn)變?yōu)殛P(guān)系模型的實(shí)質(zhì)就是如何將實(shí)體型,實(shí)體的屬性和實(shí)體之間的聯(lián)系轉(zhuǎn)化為關(guān)系模式并確定這些關(guān)系模式的屬性和碼。如下所述將基本E-R圖轉(zhuǎn)化為關(guān)系模式。</p><p> 1、實(shí)體型轉(zhuǎn)化為關(guān)系模
107、式</p><p> 根據(jù)基本E-R圖轉(zhuǎn)化為關(guān)系模式的原則,一個(gè)實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式,實(shí)體的屬性就是該關(guān)系模式的屬性,實(shí)體的碼就是該關(guān)系模式的碼。</p><p> (1)教員實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式R1: 教員信息(教員編號,登錄名,登錄密碼,姓名,性別,地址,MSN,QQ,Email,電話號碼,評價(jià)星級記錄,擅長科目,所在學(xué)校),該關(guān)系模式主鍵為(教員編號)。</p>
108、<p> (2)學(xué)員實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式R2:學(xué)員信息(學(xué)員編號,登錄名,登錄密碼,姓名,性別,地址,MSN,QQ,Email,電話號碼,評價(jià)星級記錄)該關(guān)系模式主鍵為(學(xué)員編號)。</p><p> (3)管理員實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式R3:管理員信息(管理員編號,登錄名,登錄密碼)該關(guān)系模式主鍵為(管理員編號)。</p><p> (4)論壇實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式R4
109、:論壇信息(帖子編號,主題,內(nèi)容,發(fā)帖人ID,回復(fù)人ID)該關(guān)系模式主鍵為(論壇編號)。</p><p> (5)廣告實(shí)體轉(zhuǎn)化為一個(gè)關(guān)系模式R5:廣告信息(廣告編號,內(nèi)容,類型,價(jià)格)該關(guān)系模式主鍵為(廣告編號)。</p><p> 2、實(shí)體間的聯(lián)系轉(zhuǎn)化為關(guān)系模式</p><p> 對于實(shí)體間聯(lián)系轉(zhuǎn)化為關(guān)系模式有以下幾種情況:(1)一對一(1:1)聯(lián)系可以轉(zhuǎn)化
110、為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對應(yīng)的關(guān)系模式合并。若轉(zhuǎn)化為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連接的各個(gè)實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)化為關(guān)系的屬性,每個(gè)實(shí)體的碼均是該關(guān)系的候選碼。若與某一端的實(shí)體對應(yīng)的關(guān)系模式合并,則需要在該關(guān)系模式的屬性中加入另一個(gè)關(guān)系模式的碼和聯(lián)系本身的屬性。(2)一對多(1:N)聯(lián)系可以轉(zhuǎn)化為一個(gè)獨(dú)立的關(guān)系模式,也可以與N端對應(yīng)的關(guān)系模式合并。若轉(zhuǎn)化為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連接的各個(gè)實(shí)體的碼以及聯(lián)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于bs的家教平臺畢業(yè)設(shè)計(jì)論文
- java家政服務(wù)管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--java游戲設(shè)計(jì)
- 國家教育資源公共服務(wù)平臺
- 基于java手機(jī)游戲畢業(yè)設(shè)計(jì)
- java模擬atm系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于java的畢業(yè)設(shè)計(jì)論文
- java考試系統(tǒng)畢業(yè)設(shè)計(jì)(論文)
- java航空訂票系統(tǒng)畢業(yè)設(shè)計(jì)
- java坦克大戰(zhàn)畢業(yè)設(shè)計(jì)論文
- 軟件畢業(yè)設(shè)計(jì)開題報(bào)告-java
- 基于java平臺的圖片秘書網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 畢業(yè)設(shè)計(jì)--基于java的游戲設(shè)計(jì)
- java社區(qū)網(wǎng)站畢業(yè)設(shè)計(jì)
- java在線考試系統(tǒng)畢業(yè)設(shè)計(jì)
- java+畢業(yè)設(shè)計(jì)+掃雷(程序)
- java思想外文翻譯畢業(yè)設(shè)計(jì)
- 滇西地區(qū)家教信息服務(wù)平臺的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)--基于java的郵箱管理服務(wù)器設(shè)計(jì)與實(shí)現(xiàn)
- 基于java平臺的校園圖書交易網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
評論
0/150
提交評論