2017-04-05 43 views
0

我的XML:傑克遜解組:存儲內部XML作爲字符串

<body> 
    <type>authorizationStatus</type> 
    <data> 
     <AuthorizationStatusMessage> 
     <id>12345679</id> 
     <email>abc</email> 
     </AuthorizationStatusMessage> 
    </data> 
</body> 

我想這個XML解組到這樣一個POJO:

public class XMPPMessage { 
    private String type; 
    private String data; 
} 

傑克遜解組給了我一個HashMap:

{AuthorizationStatusMessage={id_colaborador=12345679, [email protected]}} 

但我想保持數據內部的XML爲一個像這樣的字符串:

<AuthorizationStatusMessage><id>12345679</id><email>abc</email></AuthorizationStatusMessage> 

如何將內部XML保存爲字符串?

回答

1

我可以看到兩個選項。

  1. 如果您可以修改您的XML架構,你可能想利用CDATA節(https://en.wikipedia.org/wiki/CDATA),讓您的<data>內容String

  2. 您可以實現自定義Jackson解串器來提取typedata。網上有很多很好的參考資料(例如http://www.baeldung.com/jackson-deserialization)。

+0

我知道了...我找到一個名爲Conversion Box的庫(http://capsulesforthejavamind.blogspot.in/2015/01/conversion-box.html)將HashMap轉換爲XML。 –

0

我知道了...我找到了一個名爲Conversion Box的庫來將HashMap轉換爲XML。