巫湘林 梁為瓊 刁禮智
摘 ?要:賀州地處三省交界處,自古以來是多民族聚居地,當(dāng)?shù)卣Z言種類豐富多樣。賀州學(xué)院積極響應(yīng)中國語言資源保護工程的號召,建設(shè)了賀州學(xué)院語言博物館方言資源采錄與展示平臺,以保護本地方言資源。平臺主要采用Java語言和Spring Boot技術(shù),結(jié)合MySQL數(shù)據(jù)庫,實現(xiàn)了方言資源的存儲和展示。通過計算機技術(shù)來收集相關(guān)語言資料數(shù)據(jù)并進行展示,極大地方便了管理人員對方言資源的管理以及公眾用戶的瀏覽。
關(guān)鍵詞:方言資源;Java;Spring Boot;MySQL
中圖分類號:H004;TP391.1 ? ? ?文獻標(biāo)識碼:A 文章編號:2096-4706(2020)12-0105-05
Abstract:Hezhou is located at the junction of the three provinces. It has been a multi-ethnic settlement with a variety of languages since ancient times. Hezhou University actively responds to the call of China language protection project,construct the dialect resources collection and exhibition platform of Hezhou University language museum and protect the local dialect resources. The platform mainly uses Java language,Spring Boot technology,and MySQL database,so it realizes the storage and display of dialect resources. Collecting and displaying relevant language data with the computer technology which will greatly facilitate the management of dialect resources and public usersrowsing.
Keywords:dialect resources;Java;Spring Boot;MySQL
0 ?引 ?言
近年來,世界的語言種類在逐漸減少,中國的方言種類也在隨著使用人數(shù)的減少而遞減。漢語方言研究與保護工作是一項持久且復(fù)雜的工作,雖然從現(xiàn)在來看沒有多少直接利益,但從長遠來看,語言資源將是無價之寶,保護語言資源意義非凡。在廣西政府制定了《廣西壯族自治區(qū)非物質(zhì)文化遺產(chǎn)保護條例》,其中包括非物質(zhì)文化遺產(chǎn)代表性項目名錄和非物質(zhì)文化遺產(chǎn)的保護與合理利用等內(nèi)容。如何把現(xiàn)有的資源分門歸類整理,形成能突顯出地方各種方言語言特點與特色、社會容易接受的語言資源展示平臺,顯得非常迫切。自從2015年啟動中國語言資源保護工程以來,賀州學(xué)院語言博物館積極參與,開展過不同規(guī)模的方言調(diào)查,并取得了不錯的成果。根據(jù)賀州學(xué)院語言博物館的總體規(guī)劃,為了更好地全方位展示方言資料,也為了更好地保護方言,采用現(xiàn)代的計算機技術(shù)來實現(xiàn)方言資料的長久保存。數(shù)字化平臺的接入將為方言資源的采錄、管理、研究、展示重新注入活力。
賀州學(xué)院語言博物館方言資源采錄與展示平臺利用互聯(lián)網(wǎng)面向公眾用戶采集方言資源,將所采集到的方言資源通過網(wǎng)頁形式進行展示。該平臺主要由方言資源、方言地圖、相關(guān)新聞等部分組成,能很好地將方言信息展示給群眾觀看,展現(xiàn)出中國方言獨特的魅力,呼吁更多人傳承優(yōu)秀傳統(tǒng)文化,致力于保護方言,促進文化多樣性。
1 ?平臺的設(shè)計與實現(xiàn)
1.1 ?平臺架構(gòu)設(shè)計
本文采用Spring Boot+MyBatis作為后端集成框架,前端展示使用Vue.js來實現(xiàn)展示,使用輕量級的MySQL數(shù)據(jù)庫來存儲數(shù)據(jù),采用通過瀏覽器來訪問頁面內(nèi)容的B/S結(jié)構(gòu)。開發(fā)模式使用MVC模式,其將軟件系統(tǒng)分為模型、視圖、控制器三層來開發(fā)。使用前后端分離模式,即用JSON技術(shù)將后臺數(shù)據(jù)封裝成特定的格式,讓前端通過Vue.js來接收數(shù)據(jù)并根據(jù)需要進行顯示,這樣使得邏輯思路清晰,也便于管理與應(yīng)用。
1.2 ?系統(tǒng)需求分析
賀州學(xué)院語言博物館方言資源采錄與展示平臺的主要功能是將現(xiàn)存的方言資源通過網(wǎng)頁的形式展示給社會大眾,讓群眾不受時間和地點的影響利用互聯(lián)網(wǎng)瀏覽信息,同時方便那些想留下鄉(xiāng)音的采錄志愿者進行采錄。平臺由前臺和后臺兩大模塊組成。前臺模塊主要向公眾用戶展示各類信息瀏覽與鄉(xiāng)音資源采錄內(nèi)容。后臺模塊主要是為了方便管理員對方言資源信息、方言地圖信息、相關(guān)新聞信息等管理。
1.2.1 ?平臺主要模塊概述
(1)登錄管理模塊:為了后臺管理系統(tǒng)安全性的考慮,采用MD5加密算法對管理員的密碼進行加密。管理員需要填寫正確的用戶名和密碼才能進入到后臺管理界面進行管理,否則停留在登錄界面,并得到錯誤提示信息。
(2)方言資源管理模塊:主要是在后臺對方言資源信息進行管理,方便管理員對其進行新增、查看、修改、刪除的操作。
(3)方言地圖管理模塊:方言地圖的實現(xiàn)原理是利用百度地圖API獲取地點經(jīng)緯度,定位好坐標(biāo),然后在其位置上添加覆蓋物并設(shè)置信息說明標(biāo)簽框,后臺模塊則管理這些坐標(biāo)信息。
(4)相關(guān)新聞管理模塊:管理員可在后臺對新聞進行新增、查看、修改、刪除的操作。公眾用戶僅可以訪問指定的頁面查看新聞的內(nèi)容。新聞編輯平臺通過融合百度編輯器UEditor以實現(xiàn)文字、圖片、文件、視頻、音頻等內(nèi)容形式,實現(xiàn)新聞內(nèi)容的豐富化。
(5)鄉(xiāng)音資源采錄模塊:為了方便采錄志愿者而設(shè)立的一個功能模塊,該采錄界面在前臺模塊中,后臺則通過方言資源管理模塊對采錄到的資源進行管理。
1.2.2 ?平臺總體功能模型
采錄與展示平臺根據(jù)角色的不同,賦予其的權(quán)限也不同。公眾用戶只能執(zhí)行瀏覽方言資源信息,觀看方言地圖、采錄鄉(xiāng)音和查看團隊簡介操作。后臺管理員則可進入方言資源管理模塊、相關(guān)新聞管理模塊等進行管理??傮w功能結(jié)構(gòu)圖如圖1所示。
1.3 ?平臺功能設(shè)計
為了保證數(shù)據(jù)庫數(shù)據(jù)的安全性,本平臺采用前后臺分模塊化開發(fā),前臺主要根據(jù)調(diào)用特定的API接收數(shù)據(jù),負責(zé)數(shù)據(jù)的展示以及采錄操作;后臺則負責(zé)數(shù)據(jù)的管理及操作。平臺詳細功能設(shè)計模塊圖如圖2所示。
1.4 ?功能實現(xiàn)
采錄與展示平臺使用IDEA作為開發(fā)工具,為了方便對數(shù)據(jù)庫的操作,使用可視化工具SQLyog來操作數(shù)據(jù)庫。該平臺的前端模塊采用Vue框架,界面可適應(yīng)于PC端和手機端,方便廣大群眾的觀看和操作。
1.4.1 ?方言資源分類展示模塊
在展示平臺首頁的左側(cè)欄采用多級菜單的方式為公眾用戶提供瀏覽界面,群眾可根據(jù)特定的區(qū)域選擇特定的方言種類,來查看對應(yīng)方言的內(nèi)容和多媒體資源。所有的方言種類與相關(guān)資料都是在后臺進行增刪與修改操作。前臺在點擊某一種具體方言后將展示當(dāng)前方言的具體情況,包括方言名稱、方言簡介、諺語、歌謠、故事、禁忌、典藏,其中諺語、歌謠、故事、禁忌將以視頻與音頻的方式展示,典藏以PDF在線瀏覽方式展示。方言資源多級菜單欄如圖3所示。
1.4.2 ?方言地圖模塊
本文設(shè)計的方言地圖主界面,是在百度地圖的基礎(chǔ)上清除了多余的鐵路網(wǎng)和標(biāo)注點,采用自定義圖標(biāo)來標(biāo)注特定位置的方言。左上角設(shè)定了地圖放縮的地圖控件,方便社會大眾的瀏覽;右側(cè)欄標(biāo)明了每種方言的圖標(biāo)。該地圖主要展示賀州市的村落方言分布,未來將展示更多地區(qū)的方言。方言地圖如圖4所示。
1.4.3 ?鄉(xiāng)音采錄模塊
錄音功能是系統(tǒng)的核心功能,團隊結(jié)合Vue框架篩選使用的錄音組件。該組件為多個事件提供了回調(diào)方法,如開始錄音、完成錄音等。通過向該組件傳值的方式綁定上傳文件的接口以及提供上傳文件成功的回調(diào)函數(shù),就可以實現(xiàn)文件的上傳,并獲取上傳文件的URL鏈接,該鏈接作為表單的一部分與其他相關(guān)信息一起提交到服務(wù)器中。錄音界面的中間為錄音組件。當(dāng)點擊錄音按鈕后,該按鈕變成紅色,此時處于錄音狀態(tài);再次點擊該按鈕就表示錄音結(jié)束,最后輸入姓名與方言名可進行存儲。錄音界面圖如圖5所示。
1.4.4 ?相關(guān)新聞模塊
新聞由后臺管理員手動發(fā)布并管理,前臺通過由后臺生成的API接收相關(guān)新聞的數(shù)據(jù)并通過HTML標(biāo)簽展示。新聞主要內(nèi)容為方言文化的最新研究成果和語言博物館的最新動態(tài)。新聞列表由標(biāo)題部分、正文和摘要部分、封面圖部分三個部分組成。新聞詳情的實現(xiàn)方式為:從/news頁面跳轉(zhuǎn)到/new-detail頁面,同時傳遞動態(tài)的ID到詳情頁面;進入到詳情頁面后,通過Vue Router獲取到動態(tài)的ID,然后發(fā)送請求到服務(wù)器,獲取該動態(tài)的完整信息。相關(guān)新聞如圖6所示。
1.4.5 ?團隊簡介模塊
此部分主要是對參與賀州學(xué)院語言博物館建設(shè)的團隊成員的個人相片、研究經(jīng)歷、個人論文與專著、獲得獎項等的展示。
1.5 ?系統(tǒng)關(guān)鍵代碼
方言地圖功能部分關(guān)鍵后臺代碼:
public class MapAreaNameController {
private MapAreaNameService mapAreaNameService;
public void ?getbyId(Long id, Model model){
MapAreaName mapAreaName=new MapAreaName ();
if(id!=null){
mapAreaName = mapAreaNameService.selectById (id);
}
else{
mapAreaName=new MapAreaName();
}
model.addAttribute("mapAreaName",mapAreaName);
}
//獲取所有記錄
@GetMapping("/list")
@ResponseBody
public Map
Map
List
resulst.put("data",mapAreaNames);
return resulst;
}
//跳轉(zhuǎn)列表
@GetMapping("/mapList")
private ?String mapLists(){
return "map_area_list";
}
//跳轉(zhuǎn)表單
@GetMapping("/mapForm")
private ?String mapform(){
return "map_area_form";
}
//批量刪除
@RequestMapping("/deleteMapList")
@ResponseBody
public Map
Map
long count = mapAreaNameService.deleteByList(ids);
if(count>0){
result.put("msg","成功刪除"+count+"記錄!");
}else{
result.put("msg","刪除失敗,請稍后再試!");
}
return result;
}
//單條刪除
@GetMapping("/deleteById")
public String deleteById(long id){
mapAreaNameService.deleteById(id);
return "redirect:/map/area/mapList";
}
//根據(jù)id獲取信息
@ResponseBody
@GetMapping("/selectById")
public MapAreaName selectById(long id){
MapAreaName map=mapAreaNameService.selectById(id);
return ? map;
}
//新增內(nèi)容
@PostMapping("/save")
public String addContent(MapAreaName mapAreaName, Model model){
if(mapAreaName.getId()==null){
int add = mapAreaNameService.insert(map AreaName);
if(add!=0){
model.addAttribute("msg","新增內(nèi)容成功!");
}else
{
model.addAttribute("msg","新增內(nèi)容失??!");
return "redirect:/map/area/mapForm";
}
}else{
mapAreaNameService.update(mapAreaName);
}
return "redirect:/map/area/mapList";
}
}
1.6 ?功能測試與部署
測試主要由三個方面組成,一個是使用POSTMAN對接口進行測試,這些測試是為了確定接口所需要的字段、字段的類型、請求數(shù)據(jù)的格式,同時確定請求響應(yīng)內(nèi)容的格式、字段、字段的含義。除了確定正確請求的格式,還需要確定請求失敗時的響應(yīng)格式,以便在項目中判斷請求的失敗或成功。第二個方面是測試界面的顯示,主要是測試每個界面能否獲取到數(shù)據(jù)、數(shù)據(jù)有沒有正確地顯示、顯示的樣式是否符合預(yù)期,另外還有頁面之間的跳轉(zhuǎn)是否正常、頁面之間的數(shù)據(jù)傳遞是否正常。最后測試錄音功能是否正常,檢查是否可以錄制用戶的聲音,檢查錄音完成后能否正常提交。
考慮到平臺的安全性和穩(wěn)定性,團隊使用LINUX系統(tǒng)來部署項目,并通過Tomcat對外提供服務(wù),用戶可根據(jù)指定IP地址來訪問平臺。
2 ?結(jié) ?論
方言資源采錄與展示平臺使用Java Web技術(shù)實現(xiàn)了基于B/S模式的后臺管理系統(tǒng),為維護數(shù)據(jù)提供了一個良好的管理界面,同時也為前臺展示提供了數(shù)據(jù)支持。順應(yīng)當(dāng)今信息處理技術(shù)和多媒體的發(fā)展,該平臺將方言資源有效地存儲起來,同時也讓更多人了解到方言是文化重要的載體和組成部分,是珍貴的非物質(zhì)文化遺產(chǎn)和不可再生的寶貴資源,我們需要肩負起保護中國語言文化遺產(chǎn)的責(zé)任。
參考文獻:
[1] 林佳慶,李涓子,張鵬.中國語言資源采錄展示平臺的關(guān)鍵技術(shù)及其應(yīng)用 [J].語言文字應(yīng)用,2019(4):26-34.
[2] 楊璧菀,鄧玉榮.賀州市的語言種類及地理分布 [J].賀州學(xué)院學(xué)報,2018,34(1):51-60.
[3] 劉宗艷.語言資源富集地區(qū)語言博物館建設(shè)的模式探索——以賀州學(xué)院語言博物館為例 [J].賀州學(xué)院學(xué)報,2016,32(1):70-72.
[4] 毛炎.基于Vue.js框架的Web方言地圖的設(shè)計與開發(fā) [D].武漢:武漢大學(xué),2018.
作者簡介:巫湘林(1984.09—),男,漢族,湖南醴陵人,講師,碩士研究生,研究方向:計算機網(wǎng)絡(luò)、計算機教育。