[發明專利]一種基于aviator數據結構之間相互轉換方法在審
| 申請號: | 202110413870.1 | 申請日: | 2021-04-16 |
| 公開(公告)號: | CN112948479A | 公開(公告)日: | 2021-06-11 |
| 發明(設計)人: | 邵健鋒;朱國全;林鑒 | 申請(專利權)人: | 深圳市今天國際物流技術股份有限公司 |
| 主分類號: | G06F16/25 | 分類號: | G06F16/25;G06F16/28 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518000 廣東省深圳市龍崗*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 aviator 數據結構 之間 相互 轉換 方法 | ||
本發明涉及計算機技術領域,公開了一種基于aviator數據結構之間相互轉換方法,為了解決數據接口對接時,接口間的數據格式與數據結構不匹配,導致需要人為進行定制開發的問題,通過確定源數據與目標數據的格式及結構、反向生成、解析、映射、數據落地等步驟實現,不需要額外編碼,操作方便簡單成本低。
技術領域
本發明涉及計算機技術領域,特別是一種基于aviator數據結構之間相互轉換方法。
背景技術
隨著信息技術的不斷發展,越來越復雜的應用和微服務化思維的推廣,且數量在不斷的增長,服務與服務之間的調用變得極為頻繁,每個服務在通訊的過程中需要確定接口間參數、返回信息的數據結構與數據格式;然而,每個服務的更新周期是不一致的,有的服務更新頻率較頻繁,有的服務則相對穩定,少有更新,這樣就會產生兩個問題:
一、有些服務采用的技術棧比較老舊,有些服務技術棧比較新,不同服務的技術棧不同,會導致各自使用不同的數據格式來組織各自的業務數據,如早期的webservice提供的接口會以xml作為通訊的數據格式,而當前的一些服務會以http結合json的方式來做服務間的通訊,如果一個服務需要與多個服務對接,同一套數據對接不同服務,有的服務是xml格式進行通訊,有的服務是json格式進行通訊,那研發人員需要做相應的格式轉換編碼,成本較高;
二、有些服務在做數據對接的時候,可能存在這么一種情況,同樣的數據,在A系統叫id,在B系統叫No.,A系統的重量字段單位用KG,B系統的重量字段單位用G,如果再與C系統對接,它的重量單位用噸,那對于研發人員就需要在各自的接口做不同的換算,成本很高;
基于以上兩個問題,本專利的方法可以實現方便有效的處理,大大降低研發成本的投入。
基于本專利,只需要以對接的應用和應用的接口為一個維度,將數據結構和映射關系配置好,一個份數據經過不同的應用與接口找到對應的映射關系,轉換輸出即可。
發明內容
本發明的目的在于提供一種基于aviator數據結構之間相互轉換方法,以解決背景技術中針對不同數據格式與數據結構的轉換需要人為寫代碼進行轉換,通過源數據和目標數據的字段的映射和處理邏輯,實現快速轉換,隨配隨用。
為實現上述技術目的,達到上述技術效果,本發明公開了一種任意數據結構之間相互轉換的方法,包括但不限于(json、xml、yml)等數據格式的轉換,同時可以對數據的結構進行調整,這具體實現步驟如下:
S1:確定源數據的數據格式與數據結構,數據格式為json,xml,yml等常見的數據格式;
S2:確定目標數據的數據格式與數據結構,數據格式為步驟S1中提到的數據格式中一種;
S3:對目標數據進行反向規則生成,解析出目標數據的數據結構;
S4:將解析出來的目標數據字段列在界面中,等待用戶配置各字段與源數據結構中的字段對應關系;
S5:其中$source用來代表目標數據本身,可以通過$source.字段名稱來引用源數據中的字段,進行映射;
S6:映射完成后,在數據轉換中,首先將$source和目標數據作為鍵值對,放入環境變量中;
S7:從目標數據的根開始,逐層遍歷數據中的各個屬性,每個屬性的類型有兩種,一種為數組,一種為對象;
S8:如果屬性為數組,則進行循環,遍歷數組中的每一個對象,同時在環境變量中將遍歷中的當前對象賦值給$this環境變量,并判斷條件是否滿足,如果不滿足則跳過當前對象,如果滿足則開始遍歷當前的對象或數組,重復S8-S10的步驟;
S9:如果屬性為對象,遍歷對象中的每一屬性,并判斷條件是否滿足,如果不滿足則跳過當前對象,如果滿足則開始遍歷對象中的屬性,重復S8-S10的步驟;
S10:如果屬性不是數據也不是對象,即為最終存儲值的屬性,判斷條件是否滿足,如果不滿足則跳過當前屬性,如果滿足則通過用戶配置的映射進行解析,獲得最終值;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市今天國際物流技術股份有限公司,未經深圳市今天國際物流技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110413870.1/2.html,轉載請聲明來源鉆瓜專利網。





