999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于AOP的動態數據翻譯框架

2023-11-02 01:49:32
鐵路通信信號工程技術 2023年10期
關鍵詞:內容語言

張 舒

(北京全路通信信號研究設計院集團有限公司,北京 100070)

1 動態數據翻譯概況

目前越來越多的項目有了國際化需求,國際化主要是指根據語言選擇,顯示符合不同國家閱讀習慣的頁面和數據。國際化功能不僅需要將前臺界面固定使用的文本元素進行翻譯,對于程序動態產生的數據也需要進行翻譯展示。針對固定文本信息的翻譯,可以使用通用的i18n組件,根據用戶當前選擇語言類型,從語言配置文件中提取相應的內容。后臺數據的翻譯功能,目前主流方案主要有以下兩種。

使用翻譯網站提供的在線翻譯api。這種方式不需要自備翻譯數據集,方便靈活。但是當需要前后臺交互并涉及到業務邏輯時,雖然可以將前臺輸入內容進行反向翻譯統一成同一種語言內容,但是無法保證傳遞給邏輯業務數據內容的唯一可識別性。因此該方法僅適用于只展示動態數據,不對動態數據進行業務邏輯的情況。此外,正常網絡訪問也是使用此方法的必備條件。

構建數據字典,包括鍵值及對應的翻譯語言內容。前后臺交互及后臺業務使用鍵值,前臺顯示時使用翻譯內容。此方案完美解決了輸入內容唯一可識別的需求,但是需要將待翻譯的字段擴展為鍵值和翻譯內容兩個字段。這種方式要在程序設計時就考慮進去,如果是在業務開發完成或部分完成后增加,需要重新梳理并修改前后臺數據結構,增大了開發工作量。

基于以上情況,因此需要設計一種易于配置并且具有高可復用性的框架實現動態數據翻譯工作。

2 翻譯框架設計

2.1 總體設計

動態數據翻譯框架設計如圖1所示。

圖1 翻譯框架設計Fig.1 Translation framework design

此框架設計遵循分層原則,劃分不同層的功能職責。其中Aspect用于對請求的參數及返回值攔截,調用翻譯服務進行字段翻譯更新數據內容;Service層(服務層)提供翻譯服務,承擔該框架的主要業務;Dao層(數據訪問層)實現數據持久化功能,與數據源交互。框架內默認設置翻譯服務包括中文、英文,如需擴展語言類型,使用時需要填寫在配置文件中并更新數據庫結構及內容。此功能是通過使用Cglib動態擴展java類及其接口實現。應用此框架,后臺接收到請求后的運行時序如下。

1)解析請求的語言類型;

2)具有入參翻譯標簽的方法進行入參結構掃描,國際化功能處理成統一可識別鍵值;

3)核心業務邏輯處理;

受胎率用SPSS19.0統計軟件進行卡方檢驗,精子活率和精子頂體完整率用單因素方差分析,結果用“平均值±標準差”表示。P<0. 05表示差異顯著,P>0. 05表示差異不顯著。

4)具有返回值翻譯標簽的方法進行返回值結構掃描,國際化功能處理成翻譯后的內容;

5)返回替換翻譯值后的響應內容。

應用此方案,基于動態數據翻譯的請求http請求過程如圖2所示,對于B/S架構的前臺而言,僅需在http請求頭中增加語言類型屬性。

圖2 http請求過程Fig.2 HTTP request process

此方案的優點如下。

1)對于已存在的項目進行國際化功能添加時,不會變動原有數據結構,與業務解耦。

2)使用注解標注需要翻譯的接口、翻譯類型(正向翻譯/反向翻譯)以及待翻譯字段,使用AOP進行請求攔截和翻譯織入,可以縮減代碼,控制開發成本。

3)對于需要增擴翻譯的語言種類和語言內容,可以動態擴展字典表并進行文件配置,無需增添代碼。

動態數據翻譯框架與已有程序的結構兼容情況如圖3所示。

圖3 翻譯框架兼容Fig.3 Compatibility of translation framework

2.2 具體實現

動態數據翻譯框架搭建步驟如下。

1) 建立數據表,內容包括鍵值、需要翻譯的語言類型,比如中文、英文。其中鍵值是標記翻譯內容的唯一后臺通用語言,用于在后臺服務中進行數據交換和數據存儲。

2) 翻譯字典查詢業務,提供正向翻譯和反向翻譯功能。正向翻譯是指輸入鍵值和語言種類,返回對應的語言內容;反向翻譯是指輸入翻譯內容和語言種類,返回唯一鍵值。語言種類包括中文、英文、以及自定義的語言類型。對于后者,程序讀取配置文件并通過Cglib自動進行裝配,讀取數據源數據提供對應的翻譯功能。

3)自定義注解TranslateRequest,Translate Response和Translate。其中TranslateRequest標記需要對入參進行反向翻譯的接口,Translate Response標記需要對返回值進行翻譯的接口,Translate標記結構體中需要參與翻譯的字段。

4)AOP切面級別攔截接口的請求和返回值。對于請求進行攔截,根據請求頭所帶語言類型,將語言內容反向翻譯為唯一鍵值,在服務中進行數據交換;對于接口返回值進行攔截,根據請求頭所帶語言類型,將返回內容中的唯一鍵值進行翻譯,替換成翻譯內容作為接口調用的響應內容。

2.3 框架使用方法

1)前臺在http請求頭增加Language字段,標記當前前臺選擇語言類型,作為后臺接口輸入參數反向翻譯以及輸出參數翻譯的標準。

2)數據庫中添加翻譯字典。

3)并不是所有的接口和參數都有翻譯需求,因此只為有翻譯需求的接口和字段添加注解。在需要對入參進行反向翻譯的接口進行TranslateRequest標記,在需要對返回值進行翻譯的接口進行TranslateResponse標記,結構體中需要參與翻譯的字段進行Translate標記。這樣操作可以最大化減少不必要的翻譯工作。

4)如果需要增擴翻譯語言類型,需要在application.yml文件中以json的key-value格式寫入dict字段。如:dict: "{id-ID: 'C_ID'}",其中key是前后臺交互的語言類型,value是對應的數據庫列名。

2.4 參考用例及測試

需要正向翻譯的方法及返回值結構如圖4所示。

圖4 參考用例代碼Fig.4 Code of reference use case

外部調用該接口,根據請求頭Language字段值不同,返回內容不同,測試結果如圖5所示。

圖5 翻譯測試結果Fig.5 Translation test results

3 結束語

本文設計了一種動態數據翻譯框架,可以應用于有翻譯需求的軟件開發,尤其適用于增量式開發和有前后臺交互需求的情況。借助AOP技術實現國際化翻譯工作與核心業務的分離,使用注解方式提高框架的易用性和可復用性。通過使用本框架,可以有效提高系統的開發效率,降低人力和時間成本。該方案已經應用于海外鐵路的信息化產品中并且使用效果良好,希望本框架可以為更多具有多語言動態數據翻譯需求的項目提供服務或設計思路。

猜你喜歡
內容語言
內容回顧溫故知新
科學大眾(2022年11期)2022-06-21 09:20:52
內容回顧 溫故知新
科學大眾(2021年21期)2022-01-18 05:53:48
內容回顧溫故知新
科學大眾(2021年17期)2021-10-14 08:34:02
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
主要內容
臺聲(2016年2期)2016-09-16 01:06:53
我有我語言
論語言的“得體”
語文知識(2014年10期)2014-02-28 22:00:56
主站蜘蛛池模板: 久久 午夜福利 张柏芝| 欧美日韩国产综合视频在线观看 | 国产高清色视频免费看的网址| 亚洲国产成人综合精品2020| 91精品视频播放| 青青草国产免费国产| 98精品全国免费观看视频| 亚洲中文字幕精品| 欧美精品啪啪| 无码人中文字幕| 无码中文字幕精品推荐| 亚洲欧美综合在线观看| 久久人人97超碰人人澡爱香蕉| 亚洲婷婷六月| 精品综合久久久久久97| 亚洲av日韩av制服丝袜| 高清码无在线看| 五月天福利视频| 97精品国产高清久久久久蜜芽 | 无码AV动漫| 欧美区在线播放| 无码福利日韩神码福利片| 国产精品v欧美| 国产欧美日韩在线在线不卡视频| 国产日韩欧美中文| 久久婷婷五月综合色一区二区| 亚洲人成在线免费观看| 国产精品lululu在线观看| 亚洲Av综合日韩精品久久久| 性色生活片在线观看| 中国国产高清免费AV片| 亚洲欧洲日韩综合| 在线亚洲精品福利网址导航| lhav亚洲精品| 四虎永久在线精品影院| 国产伦精品一区二区三区视频优播 | 114级毛片免费观看| 久久久久亚洲精品成人网| 激情综合激情| 国内精品91| 亚洲无码熟妇人妻AV在线| 九九热精品视频在线| 亚洲色图欧美视频| 国产美女无遮挡免费视频网站| 精品無碼一區在線觀看 | 青青草原国产免费av观看| 亚洲欧美精品在线| 91精品综合| 91精品网站| 强奷白丝美女在线观看| 欧美精品黑人粗大| 成人毛片免费在线观看| 麻豆AV网站免费进入| 国产精品va免费视频| 波多野结衣无码AV在线| 四虎永久在线精品国产免费| 亚洲欧美成aⅴ人在线观看| a毛片免费观看| 欧洲一区二区三区无码| 欧美全免费aaaaaa特黄在线| 丰满人妻久久中文字幕| 精品无码专区亚洲| 无码一区18禁| 欧美全免费aaaaaa特黄在线| 一本久道久久综合多人| 国产成在线观看免费视频| 亚洲香蕉久久| 东京热一区二区三区无码视频| 久久久噜噜噜| 日韩福利视频导航| 欧洲精品视频在线观看| 无码电影在线观看| 一本一本大道香蕉久在线播放| 永久免费AⅤ无码网站在线观看| 99热国产这里只有精品9九| 日韩在线影院| 在线观看国产精美视频| 成人av手机在线观看| 国产精品亚洲精品爽爽| 免费在线色| 青草娱乐极品免费视频| 国产h视频在线观看视频|