@JacksonXmlProperty(localName = "item")
List<String> items;
转换出来的结果是:
<item>
<item>23423</item>
</item>
重复了一层标签。
解决方法是加上注解:
@JacksonXmlElementWrapper(useWrapping = false)
@JacksonXmlProperty(localName = "item")
List<String> items;
关于JacksonXmlElementWrapper,官方文档:
Annotation that is similar to JAXB javax.xml.bind.annotation.XmlElementWrapper, to indicate wrapper element to use (if any) for Collection types (arrays, java.util.Collection). If defined, a separate container (wrapper) element is used; if not, entries are written without wrapping.
用于指示要用于集合类型(数组,java.util.Collection)的包装元素(如果有的话)。如果定义了容器(包装器)元素,则使用单独的容器(包装器)元素;如果没有定义,则不包装条目。
useWrapping
Optional property that can be used to explicitly disable wrapping, usually via mix-ins, or when using AnnotationIntrospector pairs.
文章讨论了在使用Jackson库解析XML时,如何通过添加@JacksonXmlElementWrapper注解来避免因List<String>items导致的重复标签问题。注解允许控制是否使用单独的包装元素,以保持XML结构清晰。
5678

被折叠的 条评论
为什么被折叠?



