【发布时间】:2019-07-23 08:33:19
【问题描述】:
@XmlRootElement@JacksonXmlRootElement 之间的确切区别是什么?
我知道@XmlRootElement 是通用的,但是当我检查包结构时,两者都是不同的。
所以在使用这个的时候肯定有一些优点和缺点。
【问题讨论】:
标签: xml xml-parsing jackson jaxb xml-binding
@XmlRootElement@JacksonXmlRootElement 之间的确切区别是什么?
我知道@XmlRootElement 是通用的,但是当我检查包结构时,两者都是不同的。
所以在使用这个的时候肯定有一些优点和缺点。
【问题讨论】:
标签: xml xml-parsing jackson jaxb xml-binding
JacksonXmlRootElement 允许定义根级别的名称
定义序列化时用于根级对象的根元素的名称
这是添加@JacksonXmlRootElement的原因
JAXB 允许您覆盖根元素的名称(使用 生成 XML 时的 @XmlRootElement。比如渲染这个类 到 XML:
@JsonIgnoreProperties( {"meal", "notMeal", "mealNameDisplay"} ) 公共 类 MealEvent...
像这样生成 XML:
lunch ...但我希望根元素是“meal”而不是 'MealEvent'。
FWIW,我也尝试使用 @JsonTypeName("meal") 进行疯狂猜测—— 没有效果。
已实现:现在有@JacksonXmlRootElement(命名类似于JAXB注解,只是带有“Jackson”前缀以减少混淆)。
【讨论】: