一種業務數據的發送方法及系統的製作方法
2023-10-06 22:00:14 2
專利名稱:一種業務數據的發送方法及系統的製作方法
技術領域:
本發明屬於數據傳輸技術領域,尤其涉及一種業務數據的發送方法及系統。
背景技術:
在集成中常常需要將一個系統的數據集成到另一個系統,首先要從源系統中獲得不同業務類型的數據。因為要保證集成過程傳輸的可靠性,所以採用消息中間件進行傳輸, 由消息中間件保證傳輸可靠性。因為數據集成時有多種不同的業務數據需要傳送,其常採用的方式如下述步驟(1)把業務數據轉化成各個異構系統通用的XML格式;(2)把XML格式的業務數據封裝成一條符合JMS規範的Text消息。消息頭攜帶數據類型等內容,消息體存放業務數據;(3)通過消息中間件進行傳輸。但是,在對業務數據的傳輸前,需要把業務數據轉換成通過的XML格式,造成數據消息的冗餘,又出於網絡帶寬的限制,使業務數據的傳輸速率受到限制。
發明內容
本發明實施例的目的在於提供一種業務數據的發送方法,旨在解決現有技術中在對業務數據的傳輸前,需要把業務數據轉換成通過的XML格式,造成數據消息的冗餘,又出於網絡帶寬的限制,使業務數據的傳輸速率受到限制的問題。本發明實施例是這樣實現的,一種業務數據的發送方法,所述方法包括下述步驟取出與發送節點相對應的業務類型的業務數據;
將所述業務數據轉化為XML格式文本;將所述XML格式文本轉換成字節數組;對所述字節數組進行壓縮編碼,得到Mring類型字符串;將所述Mring類型字符串封裝成Text文本類型消息,並發送。本發明實施例的另一目的在於提供一種業務數據的發送系統,所述系統包括業務數據取出模塊,用於取出與發送節點相對應的業務類型的業務數據;轉化模塊,用於將所述業務數據取出模塊取出的業務數據轉化為XML格式文本;轉換模塊,用於將所述轉化模塊轉化得到的XML格式文本轉換成字節數組;壓縮模塊,用於對所述字節數組進行壓縮編碼,得到Mring類型字符串;以及封裝發送模塊,用於將所述Mring類型字符串封裝成Text文本類型消息,並發送。本發明實施例的另一目的在於提供一種業務數據的接收方法,所述方法包括下述步驟取出接收到的Text文本類型消息中的Mring類型字符串;
將所述Mring類型字符串進行解碼解壓縮,得到字節數組;將所述字節數組還原為XML格式文本;將所述XML格式文本還原為業務數據。本發明實施例的另一目的在於提供一種業務數據的接收系統,所述系統包括字符串取出模塊,用於取出接收到的Text文本類型消息中的Mring類型字符串;解碼解壓縮模塊,用於將所述字符串取出模塊取出的Mring類型字符串進行解碼解壓縮,得到字節數組;第一還原模塊,用於將所述解碼解壓縮模塊得到的字節數組還原為XML格式文本;以及第二還原模塊,用於將所述第一還原模塊還原得到的XML格式文本還原為業務數據。在本發明實施例中,取出與發送節點相對應的業務類型的業務數據;將所述業務數據轉化為XML格式文本;將所述XML格式文本轉換成字節數組;對所述字節數組進行壓縮編碼,得到Mring類型字符串;將所述Mring類型字符串封裝成Text文本類型消息,並發送,提高了業務數據的傳輸速率。
圖1是本發明第一實施例提供的業務數據的發送方法的實現流程圖;圖2是本發明第二實施例提供的業務數據的發送方法的實現流程圖;圖3是本發明第一實施例提供的業務數據的發送系統的結構框圖;圖4是本發明第二實施例提供的業務數據的發送系統的結構框圖;圖5是本發明實施例提供的業務數據的接收方法的實現流程;圖6是本發明實施例提供的業務數據的接收系統的結構框圖;圖7是本發明實施例提供的業務數據發送的具體實例。
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。在本發明實施例中,在不改變原有業務數據傳輸結構的基礎上,對業務數據進行相應的業務處理,提高了業務數據的傳輸速率。本發明實施例的目的在於提供一種業務數據的發送方法,所述方法包括下述步驟取出與發送節點相對應的業務類型的業務數據;將所述業務數據轉化為XML格式文本;將所述XML格式文本轉換成字節數組;對所述字節數組進行壓縮編碼,得到Mring類型字符串;將所述Mring類型字符串封裝成Text文本類型消息,並發送。
本發明實施例的另一目的在於提供一種業務數據的發送系統,所述系統包括業務數據取出模塊,用於取出與發送節點相對應的業務類型的業務數據;轉化模塊,用於將所述業務數據取出模塊取出的業務數據轉化為XML格式文本;轉換模塊,用於將所述轉化模塊轉化得到的XML格式文本轉換成字節數組;壓縮模塊,用於對所述字節數組進行壓縮編碼,得到Mring類型字符串;以及封裝發送模塊,用於將所述Mring類型字符串封裝成Text文本類型消息,並發送。本發明實施例的另一目的在於提供一種業務數據的接收方法,所述方法包括下述步驟取出接收到的Text文本類型消息中的Mring類型字符串;將所述Mring類型字符串進行解碼解壓縮,得到字節數組;將所述字節數組還原為XML格式文本;將所述XML格式文本還原為業務數據。本發明實施例的另一目的在於提供一種業務數據的接收系統,所述系統包括字符串取出模塊,用於取出接收到的Text文本類型消息中的Mring類型字符串;解碼解壓縮模塊,用於將所述字符串取出模塊取出的Mring類型字符串進行解碼解壓縮,得到字節數組;第一還原模塊,用於將所述解碼解壓縮模塊得到的字節數組還原為XML格式文本;以及第二還原模塊,用於將所述第一還原模塊還原得到的XML格式文本還原為業務數據。在本發明實施例中,取出與發送節點相對應的業務類型的業務數據;將所述業務數據轉化為XML格式文本;將所述XML格式文本轉換成字節數組;對所述字節數組進行壓縮編碼,得到Mring類型字符串;將所述Mring類型字符串封裝成Text文本類型消息,並發送。實施例一圖1示出了本發明第一實施例提供的業務數據的發送方法的實現流程,其具體的步驟如下所述在步驟SlOl中,取出與發送節點相對應的業務類型的業務數據。在本發明實施例中,需要預先為每個發送節點配置所要發送的業務數據的業務類型,即每個發送節點只發送一種類型的業務數據,下述有具體的實施例進行描述。在本發明實施例中,該取出的業務數據可以包含有多條,也可以包含一條。在步驟S102中,將所述業務數據轉化為XML格式文本。在本發明實施例中,該XML格式文本可以是字符串Mring類型的,也可以是其他可以與Mring類型能夠互相轉化的類型的,在此不用以限制本發明。其中,當取出的業務數據有多條時,在此對多條數據進行轉化,然後將轉化的多條數據進行組合拼接,下述有具體的實施例進行描述,在此不再贅述。在步驟S103中,將所述XML格式文本轉換成字節數組。
在本發明實施例中,該字節數組的格式可以是byte□,也可以是其他可以與 byte[]能夠互相轉化的類型的,在此不用以限制本發明。其中,將XML格式文本轉換為字節數組,尤其是byte[]格式的字節數組,便於對數據傳輸安全性能的擴展,例如加密、校驗等功能的添加。在步驟S104中,對所述字節數組進行壓縮編碼,得到Mring類型字符串。在本發明實施例中,在數據內容、網絡帶寬等環境不變的前提下,採用壓縮技術可以提高數據的傳輸速率,例如,可以將原來的6W條每小時提升至100W條每小時。在步驟S105中,將所述Mring類型字符串封裝成Text文本類型消息,並發送。在本發明實施例中,該業務數據的業務類型為將業務數據抽象成JAVA對象後的類型,其包括基礎資料、憑證和單據等類型,其中,基礎資料包括物料、人員等。在本發明實施例中,在系統集成場景中,充分運用軟體編程技術和ERP原理,在不改變原有的組成構架的前提下,將傳輸效率提升十多倍。實施例二在實施例一的基礎上,需要執行一些預備操作,具體為1、為每個發送節點配置一種業務類型的業務數據即每個發送節點只發送一種業務類型的數據,保證了數據的傳輸的秩序性。2、為每個發送節點配置發送的業務信息所包含的業務數據條目每個發送節點發送的業務數據條目為有限條,例如N條,保證了數據發送的速率。實施例三在上述實施例一和實施例二的基礎上,圖2示出了本發明第二實施例提供的業務數據的發送方法的實現流程,其具體的步驟如下所述在步驟S201中,為每個發送節點配置一種業務類型的業務數據。在步驟S202中,為每個發送節點發送的業務信息所包含的業務數據條目。在步驟S203中,取出與發送節點相對應的業務類型的業務數據。在步驟S204中,當取出的業務數據有多條時,將該多條業務數據分別轉化為字符串Mring類型的多條XML格式文本。在步驟S205中,將所述多條XML格式文本進行組合拼接,得到一條組合信息。在本發明實施例中,對該多條業務數據的拼接時,多條業務數據之間可以通過分隔符進行分割,其中,該分割符可以是常見的分隔符,只要與XML標記語言有區分即可。在步驟S206中,將組合信息轉換成byte[]格式的字節數組。在步驟S207中,對所述字節數組進行壓縮編碼,得到Mring類型字符串。在步驟S208中,將所述Mring類型字符串封裝成Text文本類型消息,並發送。實施例四圖3示出了本發明第一實施例提供的業務數據的發送系統的結構框圖,為了便於說明,圖中僅給出了與本發明實施例相關的部分。業務數據取出模塊11取出與發送節點相對應的業務類型的業務數據;轉化模塊 12將所述業務數據取出模塊11取出的業務數據轉化為XML格式文本;轉換模塊13將所述轉化模塊12轉化得到的XML格式文本轉換成字節數組;壓縮模塊14對所述字節數組進行壓縮編碼,得到Mring類型字符串;封裝發送模塊15將所述Mring類型字符串封裝成Text文本類型消息,並發送。上述僅為本發明的一個系統實施例,其各模塊的功能如上述方法實施例所述。實施例五在實施例四的基礎上,業務數據的發送系統還包括第一配置模塊16為每個發送節點配置一種業務類型的業務數據;第二配置模塊 17為每個發送節點配置要發送的業務信息所包含的業務數據條目;轉化模塊12將所述業務數據取出模塊11取出的業務數據轉化為字符串Mring 類型的XML格式文本後,組合拼接模塊18將所述多條XML格式文本進行組合拼接,得到一條組合信息,然後轉換模塊13將所述組合拼接模塊18組合拼接得到的組合消息轉換成 byte[]格式的字節數組,如圖4所示。實施例六圖5示出了本發明實施例提供的業務數據的接收方法的實現流程,其具體的步驟如下所述在步驟S501中,取出接收到的Text文本類型消息中的Mring類型字符串。在步驟S502中,將所述Mring類型字符串進行解碼解壓縮,得到byte[]格式的字節數組。在步驟S503中,將所述byte []格式的字節數組還原為字符串Mring類型的XML 格式文本。在本發明實施例中,當該業務數據有多條時,對byte[]格式的字節數組還原的步驟還包括對字節數組的分割,該分割的過程為拼接組合的反操作,即根據分隔符進行簡單的分割即可。在步驟S504中,將所述XML格式文本還原為業務數據。上述方法為業務數據的發送方法的相對應的業務數據的接收方法的實現。實施例七圖6示出了本發明實施例提供的業務數據的接收系統的結構框圖,為了便於說明,圖中僅給出了與本發明實施例相關的部分。字符串取出模塊21取出接收到的Text文本類型消息中的Mring類型字符串;解碼解壓縮模塊22將所述字符串取出模塊21取出的Mring類型字符串進行解碼解壓縮,得到byte[]格式的字節數組;第一還原模塊23將所述解碼解壓縮模塊22得到的byte[]格式的字節數組還原為字符串Mring類型的XML格式文本;第二還原模塊M將所述第一還原模塊23還原得到的XML格式文本還原為業務數據。上述僅為本發明的一個系統實施例,其各模塊的功能如上述方法實施例所述。其中,實施例四、五所請求保護的業務數據的發送系統和實施例七所請求保護的業務數據的接收系統,可以一併內置於一個業務終端,即該業務終端可以同時具備業務數據的發送系統和接收系統,當然也可以分開實施,在此不用以限制本發明。實施例八作為本發明的一個具體實例,假設現在有職員、組織、物料、供應商、科目等類型的數據需要做集成,則在傳輸過程中首先可以將同類型數據集中歸類,取一個既定的數量的同類型數據;
7
然後將其拼接後轉化成xml格式的文本,再轉成byte []字節碼;之後可以做壓縮、加密等操作,因為是同類型數據,所以xml格式的文本結構也較為一致,即獲得了很高的壓縮比,大概壓縮後僅為原來的大小(100條記錄)。經過本發明實施例提供的技術方案的傳輸,接收到後會進行解密,解壓,分拆,然後根據數據的業務類型,採用不同的數據接收器來處理各個類型的消息。下述給出一具體的事例如圖7所示,假設現在有多條數據要傳遞(假設每10條數據合併成1條字符串數據),假設為數據A和數據B:1.按業務數據類型分類,對數據A和數據B進行分別分類,並分別進行相應的處理;2.將10條數據A轉化為XML格式,並拼接,結果為一個字符串si;3.將10條數據B轉化為XML格式,並拼接,結果為一個字符串S2;4.將s 1轉化成字節碼(byte[])bl ;5.將s2轉化成字節碼(byte[])b2 ;6.將bl進行壓縮操作,得到字節碼(byte [])Bi,發送;7.將Μ進行壓縮操作,得到字節碼(byte[])B2,發送;8.接收端收到Bl後,通過相應的解壓縮算法,得到還原過的字節碼bl ;9.接收端收到B2後,通過相應的解壓縮算法,得到還原過的字節碼Μ ;10.將bl重新構成字符串,得到si ;11.將1^2重新構成字符串,得到s2 ;12.拆分sl,得到10個XML描述,分別還原為業務數據,進行其他處理;13.拆分s2,得到10個XML描述,分別還原為業務數據,進行其他處理;14.再次重新返回步驟2,再分別取10條數據A和數據B做同樣處理,如果此時數據的數目η < 10,則取這η條做同樣處理,直到處理完所有的職員和物料數據。上述僅為本發明的一個實施例,在此不用以限制本發明。在本發明實施例中,取出與發送節點相對應的業務類型的業務數據;將所述業務數據轉化為XML格式文本;將所述XML格式文本轉換成字節數組;對所述字節數組進行壓縮編碼,得到Mring類型字符串;將所述Mring類型字符串封裝成Text文本類型消息,並發送,提高了業務數據的傳輸速率。在很多大規模集成場景中,因為需要進行集成的業務數據類型比較多,數據量也很大。採用本發明的方案後,第一,通過對同構數據高度壓縮的方式,極大地提高了傳輸效率,使得集成方案可以被應用到對集成實時性較高的集成場景,擴大了用戶群體;第二,採用按照業務數據對象類型對所要傳輸的數據進行了分組,不同種類的業務數據分開傳輸, 不僅利於管理監控,而且在很大程度上使得集成過程更具有流程化的特點。同時,採用本發明實施例提供的技術方案可以達到下述有益效果(1)高性能採取了壓縮技術,所以在業務數據內容,網絡帶寬等環境不變的前提下,傳輸集成速率可從原來的約6萬條/每小時提升至約100萬條/小時;(2)低耦合性本發明實施例的技術方案僅僅對數據對象-JMS進行了優化改進, 未引起其他模塊結構的變動,也沒有依賴其他模塊的功能,因此具有低耦合的特性;
(3)易擴展性由於本發明實施例在消息格式轉換過程中存在字節數組byte []形態,所以更易於今後對傳輸安全的擴展,例如加密、校驗等功能的添加。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種業務數據的發送方法,其特徵在於,所述方法包括下述步驟 取出與發送節點相對應的業務類型的業務數據;將所述業務數據轉化為XML格式文本; 將所述XML格式文本轉換成字節數組; 對所述字節數組進行壓縮編碼,得到Mring類型字符串; 將所述Mring類型字符串封裝成Text文本類型消息,並發送。
2.如權利要求1所述的方法,其特徵在於,所述取出與發送節點相對應的業務類型的業務數據的步驟之前還包括下述步驟為每個發送節點配置一種業務類型的業務數據;為每個發送節點配置要發送的業務信息所包含的業務數據條目。
3.如權利要求1所述的方法,其特徵在於,當取出的業務數據包含多條時,所述將所述業務數據轉化為XML格式文本的步驟之後,所述將所述XML格式文本轉換成字節數組的步驟之前,所述方法還包括下述步驟將所述多條XML格式文本進行組合拼接,得到一條組合信息。
4.一種業務數據的發送系統,其特徵在於,所述系統包括業務數據取出模塊,用於取出與發送節點相對應的業務類型的業務數據; 轉化模塊,用於將所述業務數據取出模塊取出的業務數據轉化為XML格式文本; 轉換模塊,用於將所述轉化模塊轉化得到的XML格式文本轉換成字節數組; 壓縮模塊,用於對所述字節數組進行壓縮編碼,得到Mring類型字符串;以及封裝發送模塊,用於將所述Mring類型字符串封裝成Text文本類型消息,並發送。
5.如權利要求4所述的系統,其特徵在於,所述系統還包括第一配置模塊,用於為每個發送節點配置一種業務類型的業務數據;以及第二配置模塊,用於為每個發送節點配置要發送的業務信息所包含的業務數據條目。
6.如權利要求4所述的系統,其特徵在於,當取出的業務數據包含多條時,所述系統還包括組合拼接模塊,用於將所述多條XML格式文本進行組合拼接,得到一條組合信息。
7.—種業務數據的接收方法,其特徵在於,所述方法包括下述步驟 取出接收到的Text文本類型消息中的Mring類型字符串; 將所述Mring類型字符串進行解碼解壓縮,得到字節數組;將所述字節數組還原為XML格式文本; 將所述XML格式文本還原為業務數據。
8.—種業務數據的接收系統,其特徵在於,所述系統包括字符串取出模塊,用於取出接收到的Text文本類型消息中的Mring類型字符串; 解碼解壓縮模塊,用於將所述字符串取出模塊取出的Mring類型字符串進行解碼解壓縮,得到字節數組;第一還原模塊,用於將所述解碼解壓縮模塊得到的字節數組還原為XML格式文本;以及第二還原模塊,用於將所述第一還原模塊還原得到的XML格式文本還原為業務數據。
全文摘要
本發明適用於數據傳輸技術領域,提供了一種業務數據的發送方法及系統,包括取出與發送節點相對應的業務類型的業務數據;將業務數據轉化為XML格式文本;將XML格式文本轉換成字節數組;對字節數組進行壓縮編碼,得到String類型字符串;將字符串封裝成Text文本類型消息,並發送。在本發明實施例中,取出與發送節點相對應的業務類型的業務數據;將業務數據轉化為XML格式文本;將XML格式文本轉換成字節數組;對字節數組進行壓縮編碼,得到String類型字符串;將字符串封裝成Text文本類型消息,並發送,提高了業務數據的傳輸速率。
文檔編號H04L1/00GK102480335SQ20101056586
公開日2012年5月30日 申請日期2010年11月30日 優先權日2010年11月30日
發明者崔燦 申請人:金蝶軟體(中國)有限公司