資源描述:
《基于Ajax技術(shù)的 Blog發(fā)布系統(tǒng)設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、基于Ajax技術(shù)的Blog發(fā)布系統(tǒng)設(shè)計姓名:錢琬婷學(xué)號:0501W238專業(yè):計算機科學(xué)與技術(shù)指導(dǎo)教師:陳家琪教授本科畢業(yè)設(shè)計(論文)問題的提出背景隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展和人們對生活理念的不斷改變,相繼出現(xiàn)了EMAIL、BBS、ICQ等方便、快捷的傳播信息和相互交流的方式。而Blog的出現(xiàn),帶給互聯(lián)網(wǎng)用戶的是更多樣、更全面的交流方法,是一種自我形象的展示和個人價值的實現(xiàn)。內(nèi)容介紹需求分析1實施方案2系統(tǒng)結(jié)構(gòu)3系統(tǒng)設(shè)計4系統(tǒng)測試5個人總結(jié)6用戶需求系統(tǒng)功能性需求:訪客瀏覽日志搜索日志發(fā)表評論數(shù)據(jù)庫博主登錄登錄
2、后臺管理博客管理日志管理數(shù)據(jù)備份發(fā)表留言博主博客管理日志管理博客管理數(shù)據(jù)備份日志管理博客管理發(fā)表留言數(shù)據(jù)備份日志管理博客管理搜索日志發(fā)表留言數(shù)據(jù)備份日志管理博客管理瀏覽日志搜索日志發(fā)表留言數(shù)據(jù)備份日志管理分類管理評論管理系統(tǒng)設(shè)置模板更換用戶需求系統(tǒng)非功能性需求:前臺應(yīng)該簡潔、實用、交互性好,有Web2.0特色使用流行的Ajax技術(shù),改善用戶體驗。日志顯示、搜索、系統(tǒng)日歷、分類等都采用Ajax技術(shù)采用Smarty模板引擎,業(yè)務(wù)邏輯和表現(xiàn)層分離,即邏輯程序與美工分離結(jié)構(gòu)清晰合理,對網(wǎng)站訪問量應(yīng)該進行統(tǒng)計,對日志
3、的評論數(shù)、點擊量等都應(yīng)該進行統(tǒng)計登陸驗證應(yīng)該使用Session認(rèn)證實施方案采用APM方案,即Apache+PHP+MySQL方案。它是一個非常理想的網(wǎng)站解決方案。關(guān)鍵技術(shù)之Ajax技術(shù)Ajax是使用客戶端腳本與Web服務(wù)器異步交換數(shù)據(jù)的Web應(yīng)用開發(fā)方法。使用Ajax,可以在不中斷交互流程的情況下,重新加載Web頁面,從而實現(xiàn)頁面動態(tài)更新。實施方案Ajax技術(shù)原理Ajax即異步JavaScript+XML,客戶端通過javaScript提交用戶指定的命令和參數(shù),傳遞給服務(wù)器,服務(wù)器接收到命令和參數(shù)后進行處理
4、,然后把處理結(jié)果按照一定的格式通過XMLHttpRequest返回給客戶端,客戶端再按照一定的形式顯示給客戶,即顯示在網(wǎng)頁上。由于Ajax請求是異步的,客戶端可以不用等待服務(wù)器指令直接與用戶進行溝通,大大減少了服務(wù)器的負(fù)擔(dān)。實施方案Ajax技術(shù)優(yōu)勢無刷新更新頁面,減少用戶心理和實際等待時間當(dāng)讀取大量數(shù)據(jù)時,不會出現(xiàn)惱人的“白屏”現(xiàn)象;當(dāng)頁面有更新時,不需要重新加載該頁面,只更新需要更新的部分;采用異步交互模式,在等待服務(wù)器響應(yīng)的過程中,用戶可以在原有頁面上操作,可以縮短用戶的可感知等待時間;Ajax可以把以
5、前服務(wù)器負(fù)擔(dān)的的一切工作轉(zhuǎn)嫁到客戶端,利用客戶端閑置的能力來處理,減輕服務(wù)器負(fù)擔(dān)。實施方案關(guān)鍵技術(shù)之Smarty技術(shù)在實際應(yīng)用中,使用Smarty目的就是要使PHP程序員同模板設(shè)計者分離,也就是說當(dāng)程序員改變程序的邏輯內(nèi)容時,不會影響到美工的頁面設(shè)計;當(dāng)美工修改頁面也不會影響到程序邏輯。系統(tǒng)結(jié)構(gòu)數(shù)據(jù)庫備份訪客管理員瀏覽日志搜索日志通過分類通過列表通過標(biāo)簽RSS訂閱管理博客管理日志管理數(shù)據(jù)側(cè)邊列表管理模板管理寫日志和日志管理分類管理標(biāo)簽管理評論管理評論前臺顯示模塊后臺管理模塊系統(tǒng)功能模塊圖系統(tǒng)設(shè)計前臺日志顯示
6、功能邏輯讀取日志ID判斷參數(shù)顯示日志和Tags顯示空白添加評論結(jié)束Y存在N不存在數(shù)據(jù)庫數(shù)據(jù)傳輸顯示日志前臺邏輯分析客戶端通過AJAX引擎向服務(wù)器發(fā)送日志ID參數(shù),服務(wù)器端讀取數(shù)據(jù)庫的日志ID,通過ID找到對應(yīng)的日志內(nèi)容和tags,返回給客戶端顯示用戶需要評論時,客戶端通過表單提交相應(yīng)參數(shù)至服務(wù)器,并用SQL語言完成內(nèi)容添加。中間通過AJAX引擎進行異步通信,靜態(tài)頁面無刷新無跳轉(zhuǎn)。系統(tǒng)設(shè)計后臺日志管理功能邏輯編輯日志內(nèi)容發(fā)布自動保存草稿檢查Title發(fā)表日志報錯首頁顯示數(shù)據(jù)結(jié)束寫日志再編輯管理日志(刪除、分類
7、)N不存在Y存在定時器自動分配ID日志ID日志ID后臺邏輯分析通過日志ID進行數(shù)據(jù)聯(lián)系和傳輸。用戶編輯日志過程中,有定時器自動保存草稿,以免數(shù)據(jù)丟失。用戶還可以編輯草稿箱和已發(fā)表的日志,可以進行日志刪除和分類移動。全程通過Ajax技術(shù)做數(shù)據(jù)傳送的橋梁,界面友好。系統(tǒng)設(shè)計后臺模板更換功能采用基于PHP的Smarty模板引擎技術(shù)。使邏輯程序與外在美工分離,即使是不懂程序源代碼的用戶也可以利用網(wǎng)頁編輯器制作自己的前臺HTML模板。提供了一種易于管理的辦法,即一鍵式更換模板功能,方便快捷打造個性博客。功能演示系統(tǒng)測
8、試條件通過本機測試或發(fā)布至外網(wǎng)服務(wù)器測試。1首先對系統(tǒng)的所有功能模塊進行模塊化測試2之后進行系統(tǒng)的集成測試結(jié)果系統(tǒng)各功能均通過模塊測試、集成測試,進行了測試數(shù)據(jù)的添加、編輯、管理等操作,與預(yù)期的效果相符,均未出現(xiàn)程序和數(shù)據(jù)上的異常錯誤,在最終用戶的實際應(yīng)用中也未發(fā)現(xiàn)重大的錯誤。項目不足大量使用Ajax技術(shù)使它不利用搜索引擎抓取,需要進行搜索引擎優(yōu)化。此系統(tǒng)由于時間倉促和自身能力不足等原因,目前暫不支持訪客留言板、