jackson.dataformat.xml 反序列化 对象中包含泛型

重点:

@JacksonXmlProperty

localName 指定本地名称

@JacksonXmlRootElement

localName 指定root的根路径的名称,默认值为类名

@JsonIgnoreProperties(ignoreUnknown = true)

这个注解写在类上,用来忽略在xml中有的属性但是在类中没有的情况

@JacksonXmlElementWrapper(useWrapping (default:true))

指定XML元素用于List或者Map ,默认值userWrapping=true

一 看model

我的Model嵌套了一个泛型,我们重点关注Containers 这个对象

Containers中,有一个泛型List<>

二 标识泛型

为了让Jackson认出泛型,从而可以顺利反序列化。

我们使用如下两个注解

@JacksonXmlElementWrapper(useWrapping = false)

@JacksonXmlProperty(localName = "bookingcontainer")

复制代码
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Containers {
    @JacksonXmlElementWrapper(useWrapping = false)
    @JacksonXmlProperty(localName = "bookingcontainer")
    List<Bookingcontainer> bookingcontainer=new ArrayList<>();
}

三 测试

相关推荐
咸鱼翻身小阿橙3 分钟前
QT-P3
开发语言·qt·计算机视觉
心易行者11 分钟前
代码写好了,然后呢?——手把手教你把Python脚本变成能赚钱的Web应用
开发语言·前端·python
AKA__Zas12 分钟前
初识 事务
java·开发语言·数据库·sql
kongba00714 分钟前
2026年4月19日 kimi记忆备份
java·前端·数据库
今儿敲了吗15 分钟前
常用UI组件
开发语言
AI人工智能+电脑小能手16 分钟前
【大白话说Java面试题】【Java基础篇】01_说说ArrayList的底层原理/扩容规则
java·后端·面试·list
高斯林.神犇21 分钟前
六、java配置类改造ioc
java·开发语言
t***54422 分钟前
Orwell Dev-C++ 和 Embarcadero Dev-C++ 哪个更好
开发语言·c++
gCode Teacher 格码致知24 分钟前
Python提高:软件测试中Fixture机制-由Deepseek产生
开发语言·python
zuowei288928 分钟前
Spring BOOT 启动参数
java·spring boot·后端