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<>();
}

三 测试

相关推荐
信誓旦旦的程序猿5 分钟前
【量化系统从零构建 #04】存储设计:选型·建库·交易日历
java·人工智能·python·股票数据api·股票数据·股票数据api接口·股票api数据接口
yurenpai(27届找实习中)5 分钟前
Java 10 的 var 为什么不能随便用?从订单汇总看懂类型推断与泛型陷阱
java·开发语言·java18
shmily麻瓜小菜鸡26 分钟前
JS/TS 易踩坑知识点 — 模块化与工程化类
开发语言·javascript·ecmascript
geovindu38 分钟前
CSharp: Observer Pattern
开发语言·后端·观察者模式·设计模式·c#·.netcore·行为模式
Flynt1 小时前
把公司项目迁到 Spring Boot 4.0:编译通过只是开始
java·spring boot·后端
郝学胜-神的一滴1 小时前
C++11 工程级应用 09:告别无谓拷贝,解锁高性能移动语义
开发语言·数据结构·c++·vscode·软件工程·visual studio
Tangyuewei2 小时前
给老 Spring 项目装个 AI Agent
java·人工智能·spring
她的男孩2 小时前
多租户和数据权限怎么共存?扒完拦截器注册链路,我找到 4 个隐蔽的坑
java·后端·架构
MC皮蛋侠客2 小时前
OPC UA 系列(一):标准全景与 Python 最小闭环——让第一条设备数据流动起来
开发语言·python·opcua
小溪学编程2 小时前
Java BufferedReader 详解:从基础用法到性能优化
java·python·性能优化