資源描述:
《基于asp.net ajax的博客系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、基于ASP.NetAJAX的博客系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn):針對(duì)傳統(tǒng)博客系統(tǒng)存在的缺陷,采用B/S結(jié)構(gòu)模式。應(yīng)用ASP.+Ajax+SQLServer2005數(shù)據(jù)庫(kù)技術(shù)設(shè)計(jì)了一個(gè)更新速度快、交互性強(qiáng)及搜索自動(dòng)提示的博客系統(tǒng),分別從需求分析、系統(tǒng)整體設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)及系統(tǒng)關(guān)鍵技術(shù)與系統(tǒng)優(yōu)化四個(gè)方面進(jìn)行了介紹,通過(guò)運(yùn)行實(shí)踐驗(yàn)證,系統(tǒng)達(dá)到了設(shè)計(jì)的目標(biāo)。 關(guān)鍵詞:博客系統(tǒng);數(shù)據(jù)庫(kù)技術(shù);在線(xiàn)交流;界面刷新 ?。篢P311:A:1009-3044(2011)20-4886-03 TheDesignandImplementation
2、ofBlogSystemBasedonASP.NetandAJAX YANGHong-jun,ember)、管理員表(Tb_Gly)、博客信息表(Tb_Info)、日志信息表(Tb_Content)、日志分類(lèi)表(Tb_Category)、日志評(píng)論表(Tb_ment)、友情鏈接表(Tb_Links)、表情表(Tb_Smilies)、詞匯過(guò)濾表(Tb_essage)、圖片評(píng)論表(Tb_photoment)、相片表(Tb_photo)、相冊(cè)表(Tb_photoCate)、管理員發(fā)信息到用戶(hù)表(Tb_GLYToUser
3、)、用戶(hù)發(fā)信息到用戶(hù)表(Tb_UserToUser)、用戶(hù)發(fā)信息到管理員表(Tb_UserToGLY)、群發(fā)已讀表(Tb_ReadFLag)、關(guān)鍵詞表(Tb_Keye][smalldatetime]notnull),//最后編輯時(shí)間 [articleContent][varchar](3000)COLLATEChinese_PRC_CI_ASnull,//內(nèi)容 [BlogId][char](40)COLLATEChinese_PRC_CI_ASnotnull,//所屬博客編號(hào) [articleCategor
4、y][char](40)COLLATEChinese_PRC_CI_ASnotnull/日志分類(lèi)編號(hào) ) 3.2存儲(chǔ)過(guò)程設(shè)計(jì) 博客系統(tǒng)的安全性是構(gòu)建博客X站時(shí)必須認(rèn)真考慮的因素,其中SQL注入是一種常見(jiàn)的X站攻擊方式,而通常阻止SQL注入攻擊的方法有種,分別是用戶(hù)輸入合法性驗(yàn)證,使用存儲(chǔ)過(guò)程和使用SQLSERVER權(quán)限限制用戶(hù)對(duì)數(shù)據(jù)庫(kù)操作,其中,本系統(tǒng)主要考慮使用存儲(chǔ)過(guò)程來(lái)提高系統(tǒng)查詢(xún)的速度和確保系統(tǒng)的安全性,系統(tǒng)共有十幾個(gè)存儲(chǔ)過(guò)程,下面以存儲(chǔ)過(guò)程CheckUserPsTb_Memberent操作創(chuàng)建元素節(jié)
5、點(diǎn),并返回新創(chuàng)建的Element節(jié)點(diǎn),再通過(guò)appendChild()或insertBefore()函數(shù)在節(jié)點(diǎn)的子節(jié)點(diǎn)列表末添加新的子節(jié)點(diǎn)(評(píng)論內(nèi)容),評(píng)論內(nèi)容通過(guò)各項(xiàng)驗(yàn)證后即在當(dāng)前頁(yè)面動(dòng)態(tài)構(gòu)建出評(píng)論內(nèi)容,同時(shí)把評(píng)論內(nèi)容提交到后臺(tái)數(shù)據(jù)庫(kù)服務(wù)器保存?! ?.2在線(xiàn)交流 傳統(tǒng)的在線(xiàn)交流為了能與服務(wù)器同步和及時(shí)獲取最新的信息,每次交流都必須重新刷新整個(gè)頁(yè)面,大量的數(shù)據(jù)被多次反復(fù)重新載入,加上刷新頻率非常高,這嚴(yán)重浪費(fèi)服務(wù)器的資源,加重服務(wù)器的運(yùn)算負(fù)擔(dān),一旦X絡(luò)環(huán)境不好則會(huì)導(dǎo)致延時(shí)時(shí)間過(guò)長(zhǎng),這不僅會(huì)使用戶(hù)等待的時(shí)間甚至
6、會(huì)超過(guò)交流的時(shí)間,而且會(huì)有發(fā)生信息誤漏的危險(xiǎn)?! ∠到y(tǒng)應(yīng)用了Ajax技術(shù)的在線(xiàn)交流,客戶(hù)端通過(guò)發(fā)送異步請(qǐng)求來(lái)進(jìn)行新信息刷新,在不重復(fù)刷新頁(yè)面的情況下與服務(wù)器進(jìn)行異步通信,服務(wù)器不會(huì)傳回重復(fù)的數(shù)據(jù),只是將最新的消息返回給客戶(hù)端,這樣一來(lái),服務(wù)器端數(shù)據(jù)量將會(huì)大大減少,X絡(luò)傳輸速度得到了大大提升,提高了Web系統(tǒng)的即時(shí)響應(yīng)性和系統(tǒng)的穩(wěn)定性,在客戶(hù)端,由于不會(huì)刷新整個(gè)頁(yè)面,只是載入最新的數(shù)據(jù)信息,這會(huì)給用戶(hù)無(wú)刷新的視覺(jué)體驗(yàn),使用戶(hù)感覺(jué)不到客戶(hù)端與服務(wù)器之間的通信過(guò)程?! ?.3搜索提示 傳統(tǒng)搜索中,在頁(yè)面中輸入要搜索內(nèi)
7、容的關(guān)鍵字,然后單擊“搜索”按鈕,再經(jīng)歷一個(gè)請(qǐng)求、等待、再顯示的過(guò)程,服務(wù)器端就會(huì)將搜索結(jié)果頁(yè)面返回,客戶(hù)端才能顯示,這樣做有一個(gè)明顯的缺點(diǎn),那就是用戶(hù)必須完整的輸入關(guān)鍵字,而不管關(guān)鍵字有多長(zhǎng),而且在輸入過(guò)程中如有出錯(cuò)將會(huì)導(dǎo)致搜索不到想要的結(jié)果,這浪費(fèi)用戶(hù)大量時(shí)間和X站的寬帶?! ∠到y(tǒng)應(yīng)用Ajax技術(shù)完成X站的搜索提示,把搜索提示和自動(dòng)完成功能帶到了Web應(yīng)用中,首先瀏覽器加載了一個(gè)Ajax引擎,這個(gè)引擎負(fù)責(zé)繪制用戶(hù)界面以及與服務(wù)器端通信,當(dāng)用戶(hù)每在搜索框中輸入一個(gè)關(guān)鍵字時(shí)都觸發(fā)相應(yīng)鍵盤(pán)事件,利用AJAX技術(shù)通過(guò)
8、異步通信自動(dòng)向服務(wù)器發(fā)送請(qǐng)求,服務(wù)器端返回相似關(guān)鍵字列表并提示出來(lái),用戶(hù)可以使用鼠標(biāo)或鍵盤(pán)在相似關(guān)鍵字提示列表間自由選擇,這樣可以減少了用戶(hù)出錯(cuò)的幾率,單擊“搜索”按鈕后,系統(tǒng)能自動(dòng)進(jìn)入搜索狀態(tài)并返回搜索結(jié)果頁(yè)面,在搜索過(guò)程中增加了搜索提示,能減輕了用戶(hù)的勞動(dòng)強(qiáng)度,節(jié)省了用戶(hù)寶貴的檢索時(shí)間,并能提高搜索質(zhì)量和用戶(hù)的滿(mǎn)意程度?! ?.4個(gè)性化用戶(hù)配置 大多數(shù)用戶(hù)以匿名形式