基于數(shù)據(jù)庫設(shè)計(jì)的中英文雙語網(wǎng)站開發(fā)模式
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要: 傳統(tǒng)的中英文網(wǎng)站開發(fā)采用兩套代碼兩個(gè)數(shù)據(jù)庫或者一套代碼兩套資源文件的開發(fā)模式,在軟硬件開銷、代碼與信息分離和系統(tǒng)的維護(hù)性方面均存在不同程度的缺陷。針對這一問題,把頁面設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)結(jié)合起來,利用編程技術(shù),用一套代碼一個(gè)數(shù)據(jù)庫實(shí)現(xiàn)中英文雙語網(wǎng)站的開發(fā),以提高開發(fā)及維護(hù)效率,降低軟件成本。
關(guān)鍵詞: 雙語網(wǎng)站;內(nèi)容管理系統(tǒng);數(shù)據(jù)庫;靜態(tài)內(nèi)容;動(dòng)態(tài)內(nèi)容
我國一些具有國際戰(zhàn)略眼光的企業(yè),不僅建立了企業(yè)品牌中文網(wǎng)站,而且還建設(shè)了網(wǎng)站外文版[1]。英語是當(dāng)今世界上主要的國際通用語言之一,為了逾越系統(tǒng)使用者中文要求的限制以及滿足企業(yè)業(yè)務(wù)的需要,建立中英文雙語管理信息系統(tǒng)網(wǎng)站是企業(yè)實(shí)現(xiàn)國際化管理的有效途徑[1]。
目前通常采用的方法有以下兩種[2]:第一種是開發(fā)兩套系統(tǒng),即中英文系統(tǒng)自成體系,用兩套程序和兩個(gè)數(shù)據(jù)庫分別實(shí)現(xiàn);第二種是使用一套程序,針對每個(gè)頁面分別生成中英文兩個(gè)資源文件以實(shí)現(xiàn)兩種語言之間的切換,數(shù)據(jù)庫可以用兩個(gè),也可以用一個(gè)。第一種方法實(shí)現(xiàn)容易,但是其開發(fā)、測試及維護(hù)效率均很低下;第二種方法開發(fā)效率相對較高,但由于存放中英文靜態(tài)內(nèi)容的資源文件與代碼密不可分,不利于系統(tǒng)的維護(hù)。為克服上述開發(fā)模式的不足,本文選擇Microsoft Visual Studio.Net平臺(tái)的C#,提出一套基于C#的雙語網(wǎng)站設(shè)計(jì)模式,設(shè)計(jì)一個(gè)靜態(tài)信息表,將中英文靜態(tài)內(nèi)容存放于該表的不同字段,系統(tǒng)啟動(dòng)時(shí)一次性讀出中英文靜態(tài)內(nèi)容并存放于DataTable對象中,各頁面啟動(dòng)時(shí)依據(jù)頁面編號(hào)和語言標(biāo)志從DataTable中讀取并顯示靜態(tài)內(nèi)容;對頁面動(dòng)態(tài)內(nèi)容,在各信息表中設(shè)計(jì)兩個(gè)字段分別存放需要顯示的中英文內(nèi)容,根據(jù)頁面的語言標(biāo)志來讀取對應(yīng)字段內(nèi)容動(dòng)態(tài)顯示于頁面。即用一套代碼一個(gè)數(shù)據(jù)庫實(shí)現(xiàn)中英文雙語網(wǎng)站的開發(fā)。
1 系統(tǒng)需求
本文以某企業(yè)的法律規(guī)章制度的管理信息系統(tǒng)為例來說明雙語網(wǎng)站的實(shí)現(xiàn)。
(1)在業(yè)務(wù)需求方面,該系統(tǒng)旨在通過各地區(qū)(不同國家或區(qū)域)工作人員將各地區(qū)與本企業(yè)產(chǎn)品相關(guān)的產(chǎn)品安全標(biāo)準(zhǔn)和法律規(guī)章制度提取出來,按本企業(yè)的管理方式以中英文雙語錄入系統(tǒng),經(jīng)過主管部門確認(rèn)后,向本企業(yè)各部門及業(yè)務(wù)往來公司公開,使企業(yè)產(chǎn)品在不違反銷售對象國家及區(qū)域的法律制度的條件下進(jìn)行合法營銷。而目前的管理完全是通過手工制作Html文件的方式實(shí)現(xiàn)信息共享,這種方式既繁瑣且工作量大。為了優(yōu)化系統(tǒng)管理,本文提出利用數(shù)據(jù)庫及網(wǎng)站開發(fā)平臺(tái)來進(jìn)行系統(tǒng)的設(shè)計(jì)及開發(fā)。
(2)在功能需求方面,該系統(tǒng)用來管理與企業(yè)相關(guān)產(chǎn)品的法律規(guī)章制度,類似于一般管理信息系統(tǒng)的功能:法律規(guī)章制度的追加、修改、刪除、查詢及報(bào)表的制作。此外,由于規(guī)章制度類信息篇幅較長,以電子文檔方式保存的較多,因此,本系統(tǒng)還涉及電子文檔的追加、修改、刪除、查詢功能,即上傳、下載及文件瀏覽功能。
(3)在環(huán)境需求方面,由于雙語網(wǎng)站面向的用戶的多樣性,要求客戶端在以下4種組合的環(huán)境下能正常動(dòng)作,因此,集成測試及系統(tǒng)測試也必須在這4種組合環(huán)境下進(jìn)行:①中文WindowsXP、中文IE6;②英文WindowsXP、英文IE6;③中文WindowsVista、中文IE7;④英文WindowsVista、英文IE7。
(4)在安全需求方面,只有獲得本系統(tǒng)用戶名和密碼的用戶通過登錄頁面驗(yàn)證方可進(jìn)入主菜單頁面,但進(jìn)入主菜單的用戶權(quán)限各不相同,即不是進(jìn)入主菜單的用戶就能進(jìn)入所有菜單項(xiàng),通過對用戶進(jìn)行使用權(quán)限的設(shè)置及檢查,控制不同用戶對不同菜單項(xiàng)的使用權(quán)限;同時(shí)需要有效防止不經(jīng)過菜單頁面權(quán)限檢查,在IE地址欄直接輸入IP地址非法進(jìn)入各業(yè)務(wù)頁面訪問。
2 雙語對應(yīng)設(shè)計(jì)
為了提高雙語網(wǎng)站的可維護(hù)性,利用一套代碼、一個(gè)數(shù)據(jù)庫實(shí)現(xiàn)雙語網(wǎng)站的構(gòu)建。其主要實(shí)現(xiàn)技術(shù)主要包括頁面設(shè)計(jì)、數(shù)據(jù)庫表的設(shè)計(jì)和文件管理設(shè)計(jì)三個(gè)方面。
2.1 頁面設(shè)計(jì)
利用C#進(jìn)行網(wǎng)站開發(fā),其頁面顯示的內(nèi)容主要包含靜態(tài)內(nèi)容和動(dòng)態(tài)內(nèi)容兩類。在設(shè)計(jì)中,頁面靜態(tài)內(nèi)容并非像通常設(shè)計(jì)那樣設(shè)置為固定值,而是從數(shù)據(jù)庫的“靜態(tài)信息表”讀??;頁面中同一控件的顯示屬性可以根據(jù)不同環(huán)境分別顯示為中文與英文。為了便于設(shè)計(jì)及編程實(shí)現(xiàn),將各頁面的控件按統(tǒng)一方式進(jìn)行編號(hào)設(shè)計(jì),本文用5位符號(hào)字符對控件進(jìn)行編號(hào),編號(hào)規(guī)則如下:
第1位:用@表示所有頁面共同的顯示項(xiàng),用#表示各頁面專用的顯示項(xiàng)。
第2、3位:按控件種類劃分,用字符表示:
ID:頁面名;
NV:向?qū)淖郑?br /> LI:文字+鏈接;
FL:文字+輸入(文本框,單、復(fù)選按鈕,組合框等);
NA:僅顯示文字;
BT:按鈕名;
IM:畫像文件名。
第4、5位:同種類控件按序編號(hào),用數(shù)字表示。
頁面設(shè)計(jì)中的上述編號(hào),對應(yīng)數(shù)據(jù)庫的“靜態(tài)信息表”的字段“頁面控件編號(hào)”,不同頁面的控件編號(hào)基本一致,以“頁面編號(hào)”和“頁面控件編號(hào)”為主鍵來區(qū)分不同記錄。
設(shè)計(jì)示例如圖1所示(假設(shè)頁面編號(hào)為WWDG001),圖中DA01和DA02為動(dòng)態(tài)內(nèi)容項(xiàng),其編號(hào)不存放于數(shù)據(jù)庫表的某一字段,只作為設(shè)計(jì)和編程中動(dòng)態(tài)項(xiàng)目的對照依據(jù)。
2.2 數(shù)據(jù)庫相關(guān)表的設(shè)計(jì)
本系統(tǒng)雙語功能的實(shí)現(xiàn)主要借助于數(shù)據(jù)庫設(shè)計(jì)。首先定義了一個(gè)“靜態(tài)信息表”,在該表中定義了頁面編號(hào)、頁面控件編號(hào)、中英文名稱等字段,主鍵為頁面編號(hào)和頁面控件編號(hào),該表用來存放各個(gè)頁面所有靜態(tài)內(nèi)容的中英文顯示內(nèi)容。針對WWDG001頁面,靜態(tài)信息表內(nèi)容如表1所示。