[發明專利]一種代碼轉換方法及裝置在審
| 申請號: | 202110485986.6 | 申請日: | 2021-04-30 |
| 公開(公告)號: | CN113010183A | 公開(公告)日: | 2021-06-22 |
| 發明(設計)人: | 胡文濤;金純亮;黃劍文;黃俊輝 | 申請(專利權)人: | 中國工商銀行股份有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 任默聞;王濤 |
| 地址: | 100140 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 代碼 轉換 方法 裝置 | ||
本發明可用于大數據技術領域,本發明提供了一種代碼轉換方法及裝置,對預先接收的待轉換代碼進行過濾;解析過濾后的待轉換代碼,得到所述待轉換代碼對應的AST抽象語法結構樹;根據所述AST抽象語法結構樹生成目標代碼。本發明可以自動拉取、修改、提交各應用的對應代碼。在修改效率、修改結果的正確性和規范性上均比純人工大大提高。
技術領域
本發明屬于大數據技術領域,具體涉及一種代碼轉換方法及裝置。
背景技術
當前存量信息系統升級改造逐漸成為各大企業的工作重點之一,而從傳統程序語言向現代語言轉換是目前眾多企業對存量信息系統升級改造的重點,與此對應技術改造的需求也對于存量代碼庫有頻繁的修改要求。另外企業的技術規范和技術框架的升級也時常對于各應用代碼庫有調查和修改的要求。對于一個大型企業動輒數百萬級別數量的代碼文件,逐層發起規培和各自修改,一個是時間成本較大,另代碼因理解問題和人工因素,導致質量層次不齊,代碼風格差異較大。其中對于java文件的修改要求是最多的,如果自動處理,則如果用一般的四則匹配,則不能根據復雜的實際邏輯進行針對性修改。
發明內容
本發明屬于大數據技術領域,本發明所提供的代碼轉換方法及裝置,可以自動拉取、修改、提交各應用的對應代碼。如此,在修改效率、修改結果的正確性和規范性上均比純人工大大提高。
為解決上述技術問題,本發明提供以下技術方案:
第一方面,本發明提供一種代碼轉換方法,包括:
對預先接收的待轉換代碼進行過濾;
解析過濾后的待轉換代碼,得到所述待轉換代碼對應的AST抽象語法結構樹;
根據所述AST抽象語法結構樹生成目標代碼。
一實施例中,接收用戶的待轉換代碼包括:
將所述待轉換代碼存入git代碼庫中;
基于分布式批量框架從所述git代碼庫中抽取所述待轉換代碼。
一實施例中,代碼轉換方法還包括:
根據所述分布式批量框架將所述目標代碼發送至各git代碼庫中。
一實施例中,所述對預先接收的待轉換代碼進行過濾包括:
將布隆過濾器設置在鍵值數據庫中;
利用所述布隆過濾器過濾所述待轉換代碼。
一實施例中,所述根據所述AST抽象語法結構樹生成目標代碼包括:
利用正則表達式根據所述AST抽象語法結構樹生成AST文件;
根據所述AST文件生成所述目標代碼。
第二方面,本發明提供一種代碼轉換裝置,包括:
代碼接收模塊,用于接收用戶的待轉換代碼;
代碼過濾模塊,用于根據布隆過濾器過濾所述待轉換代碼;
代碼解析模塊,用于解析過濾后的待轉換代碼,以生成所述待轉換代碼對應的AST抽象語法結構樹;
代碼轉換模塊,用于根據所述AST抽象語法結構樹生成目標代碼。
一實施例中,所述代碼接收模塊包括:
代碼轉存模塊,用于將所述待轉換代碼存入git代碼庫中;
代碼抽取模塊,用于基于分布式批量框架從所述git代碼庫中抽取所述待轉換代碼。
一實施例中,代碼轉換裝置還包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國工商銀行股份有限公司,未經中國工商銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110485986.6/2.html,轉載請聲明來源鉆瓜專利網。





