正文
XML CData 处理
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
调研了 JAXB、XMLMapper(jackson)
具体方式 | 实现 | 优势 |
JAXB | 1. 需要增加 CDATA 的Adaptor 2. 需要增加对非CDATA 的 CharacterEscapeHandler | 标准 |
jackson | 1. xmlmapper 标注 @JacksonXmlCData | 简单灵活 |
结论:在这个场景需求下, 还是使用jackson吧, JAXB 网上也有一些拥护方, 去年读了一些JAXB的文档, 感觉专家把东西定义复杂了,好多东西不支持。
举例: 对象继承关系影响了 xml的生成。
如
@XmlRootElement(name="Result")
abstract class Base{
int x;
}class Request1 extends Base{
string name;
}class Request2 extends Base{
string protocol;
string version;
}这种方法是不work的
记录一下, 有坑,请绕行