菊花 玲玲
摘要:蒙古文電子詞典是重要的信息化工具之一。該研究基于MVC框架,利用Tomcat開發(fā)環(huán)境,設(shè)計蒙古文電子詞典,并進(jìn)一步探討了設(shè)計過程中的注意事項。蒙古文電子詞典相對較少,基于MVC框架設(shè)計蒙古文電子詞典研究過程中,繼續(xù)探究蒙古文電子詞典的語義搜索功能。
關(guān)鍵詞:蒙古文;電子詞典;數(shù)據(jù)庫設(shè)計;MVC框架結(jié)構(gòu)
中圖分類號:TP311? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2022)08-0058-02
詞典是在工作學(xué)習(xí)中常用的工具書。電子詞典是以光盤、磁盤、磁光盤及芯片等光、電、磁介質(zhì)作載體,并可借助微型處理器及相關(guān)設(shè)施進(jìn)行查詢和閱讀的詞典[1]。通常電子詞典管理和查找方便快捷,更容易更新及擴充內(nèi)容。
就內(nèi)蒙古實行蒙漢雙語教學(xué)的地區(qū)而言,教學(xué)工作者和學(xué)生在學(xué)習(xí)工作中都需要使用蒙古文電子詞典。蒙古文電子詞典提供蒙古文的釋義,蒙漢、蒙英與蒙西里爾的翻譯等功能。目前進(jìn)入應(yīng)用領(lǐng)域的蒙古文電子詞典相對少,內(nèi)蒙古自治區(qū)科技攻關(guān)項目通過使用內(nèi)蒙古大學(xué)蒙古學(xué)學(xué)院開發(fā)出《達(dá)日罕漢蒙電子詞典》,經(jīng)過不斷努力,成功開發(fā)出了第一部用于機器翻譯系統(tǒng)的漢蒙電子詞典。內(nèi)蒙古蒙科立軟件有限責(zé)任公司研發(fā)的《蒙科立固什詞典》提供了專業(yè)的蒙漢詞典,還包含新蒙文,這部詞典支持智能化查找功能,找出部分匹配詞條,支持多詞典選擇,供用戶靈活選擇詞典。近幾年還有《奧倫蒙文詞典》《boman蒙語詞典》《蒙漢智能翻譯》等手機App也進(jìn)入了日常應(yīng)用。
1 蒙古文電子詞典設(shè)計
蒙古文電子詞典的主頁設(shè)計了學(xué)生詞典、普通詞典、學(xué)術(shù)詞典、百科資源、其他詞典以及輔助工具等。用戶輸入用戶名和密碼,成功登錄后可以任意輸入關(guān)鍵詞進(jìn)行查詢。蒙古文電子詞典的主頁如圖1所示。
蒙古文電子詞典設(shè)計過程中,針對學(xué)生、普通用戶和學(xué)術(shù)研究者等三類用戶,設(shè)計了“學(xué)生詞典”“普通詞典”和“學(xué)術(shù)詞典”等三個不同詞典模塊。用戶單擊“學(xué)生詞典”“普通詞典”和“學(xué)術(shù)詞典”時彈出下拉菜單,顯示“釋義詞典”“翻譯詞典”和“正字詞典”等選項供用戶選擇。然后根據(jù)用戶的不同選擇,在“主顯示區(qū)”顯示“釋義詞典”“翻譯詞典”和“正字詞典”的界面。查找結(jié)果顯示時,給出“蒙古文字頭”的表格,讓用戶可以按蒙古文字頭查詢,在“顯示結(jié)果區(qū)”每次顯示10條記錄供用戶選擇,用戶可以單擊“下一頁”和“返回”按鈕任意選擇所顯示的詞條。同時用戶也可以用輸入查找的方式,測試所輸入的詞是否正確,用戶輸入錯誤時會顯示相近的10個詞。
蒙古文電子詞典設(shè)計查找相關(guān)詞語時考慮了關(guān)鍵詞查找、蒙古文首字母查找、按字節(jié)查找、熱門查找、快捷查找、語義查找等功能。比如,按字節(jié)查找時,mong 可以搜索到 mongol mongolchood 等,熱門查找時,顯示用戶最近搜索的詞,可以輸入蒙古文、音標(biāo)、西里爾文進(jìn)行查找。具體查找的流程如圖2所示。
2 蒙古文電子詞典框架設(shè)計
蒙古文電子詞典采用MVC框架模式,MVC框架的意思是模型-視圖-控制器,它的英文全稱為Model View Controller,是一款經(jīng)典的系統(tǒng)設(shè)計方法,采用了業(yè)務(wù)邏輯、數(shù)據(jù)和界面顯示分別實現(xiàn)的方式。
蒙古文電子詞典利用MVC框架結(jié)構(gòu)和Tomcat開發(fā)環(huán)境,Tomcat當(dāng)前應(yīng)用比較多的Web應(yīng)用服務(wù)器。瀏覽器請求地址為項目中對應(yīng)的包名+類名+方法名,當(dāng)請求某個地址時,在項目中的BaseAction類中首先將getServletContext()方法傳入集成Freemarker的Page類,其中在Page類中要放置即將要加載的模板的路徑。調(diào)用Java反射類Reflect并且傳入請求地址,也就是包名+類名+方法名,在Page類中加載模板文件,在該類中再寫一個put方法來實現(xiàn)用HashMap類把字符串內(nèi)容寫到當(dāng)前的 HTTP 輸出。
蒙古文電子詞典的數(shù)據(jù)庫采用數(shù)據(jù)的集中管理,登陸需要用戶名和密碼,只有管理員能夠直接訪問數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)。創(chuàng)建數(shù)據(jù)庫中的各個表的字段對應(yīng)的 entity實體類,寫各個屬性對應(yīng)的get和set方法。創(chuàng)建詞條實體類對應(yīng)的Dao類、在Dao類中寫數(shù)據(jù)庫查詢的方法,并調(diào)用實體類的set方法,返回類型為list或者是實體類。數(shù)據(jù)安全方面依靠所使用數(shù)據(jù)庫系統(tǒng)的加密安全功能外,編寫一些訪問的限制條件來提高安全性。創(chuàng)建Action類,在該類中編寫方法,每個方法對應(yīng)一個即將要加載的模板,也就是傳入Page類的html模板文件,并且傳入要在頁面中展示的字符串?dāng)?shù)據(jù)。從頁面中獲取Page類,并在它的put方法中寫入當(dāng)前的 HTTP的字符串,也就是解析Freemarker,這頁面中用HashMap的${key.value}方式解析。蒙古文電子詞典的服務(wù)端的功能如圖4所示。
3 蒙古文電子詞典設(shè)計中的注意點
通常運行的所有程序在編譯時期就要加載相關(guān)類,實現(xiàn)了“一次編譯,到處運行”。Java反射機制相對特殊,當(dāng)程序被運行的時候才被加載所需的類,它的起源是Java.lang.Class類,當(dāng)加載一個類以后,會有一個Class對象通過Java虛擬機自動產(chǎn)生,加載到虛擬機中的Class對象對應(yīng)的成員、構(gòu)造方法的聲明和定義以及方法等信息都可以通過這個Class對象獲得。在項目的Index類中實現(xiàn)調(diào)用Page類中的加載模板的setTemplate方法,并傳入模板名字。在做Java Web項目的過程中,字符集的設(shè)置也是重要部分,本設(shè)計中,解決蒙古文文字亂碼的根本辦法就是統(tǒng)一系統(tǒng)的輸入、輸出和操作系統(tǒng)的字符集。在Eclipse中該項目的屬性中設(shè)置開發(fā)和編譯時的字符集為UTF-8。在項目的配置文件web.xml中配置一個過濾器,讓所有請求都通過Servlet控制分配器后把瀏覽器發(fā)送的全部請求轉(zhuǎn)換為UTF-8。
蒙古文輸入采用符合“蒙古文國際標(biāo)準(zhǔn)編碼ISO/IEC 10646”的輸入方法,比如,蒙古文微軟輸入方法、蒙科立蒙古文輸入方法、德力海蒙古文輸入方法、方正蒙古文輸入方法等。用戶可以直接輸入所查詢的詞,也支持鼠標(biāo)選擇復(fù)制粘貼到輸入文本框的方式。當(dāng)用戶在輸入第一個字符的時候,以這個字符作為開頭的單詞會顯示在下邊的數(shù)據(jù)窗口中,用戶可以直接雙擊該單詞以便顯示這個單詞的中文解釋。
蒙古文電子詞典是蒙古文學(xué)習(xí)者的良師益友,也是最重要的信息化工具之一。蒙古文電子詞典相對較少,基于MVC框架設(shè)計蒙古文電子詞典的研究中,繼續(xù)探究蒙古文電子詞典的語義搜索功能。
參考文獻(xiàn):
[1] 章宜華.計算詞典學(xué)[M].上海:上海辭書出版社,2013.
[2] 扎麗瑪.英漢蒙電子詞典計算機查詢軟件的設(shè)計與實現(xiàn)[D].呼和浩特:內(nèi)蒙古師范大學(xué),2006.
[3] 斯琴其木格.基于Web應(yīng)用的蒙漢術(shù)語雙向翻譯詞典研究[J].內(nèi)蒙古民族大學(xué)學(xué)報,2012,18(1):35-36.
[4] 王俊義,敖其爾,姍丹,等.英蒙漢電子詞典的研究與設(shè)計[J].內(nèi)蒙古大學(xué)學(xué)報:自然科學(xué)版,1999(3):384-388.
[5] 那日松.英—蒙電子詞典的構(gòu)建和相關(guān)技術(shù)的研究[D].呼和浩特:內(nèi)蒙古大學(xué),2005.
[6] 烏仁曹都.漢蒙電子詞典開發(fā)平臺的設(shè)計與實現(xiàn)[D].呼和浩特:內(nèi)蒙古大學(xué),2008.
【通聯(lián)編輯:代影】