調研了 JAXB、XMLMapper(jackson)java
具體方式 | 實現 | 優點 |
JAXB | 1. 須要增長 CDATA 的Adaptorapp 2. 須要增長對非CDATA 的 CharacterEscapeHandlerxml |
標準 |
jackson | 1. xmlmapper對象 標註 @JacksonXmlCDatablog |
簡單靈活 |
結論:在這個場景需求下, 仍是使用jackson吧, JAXB 網上也有一些擁護方, 去年讀了一些JAXB的文檔, 感受專家把東西定義複雜了,好多東西不支持。繼承
舉例: 對象繼承關係影響了 xml的生成。文檔
如 string
@XmlRootElement(name="Result") abstract class Base{ int x; } class Request1 extends Base{ string name; } class Request2 extends Base{ string protocol; string version; } 這種方法是不work的
記錄一下, 有坑,請繞行 io