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

三 测试

相关推荐
要开心吖ZSH3 分钟前
Java AI Agent 开发中的 RAG 实现方案及小白入门指南
java·ai·agent·rag
掉鱼的猫4 分钟前
Java 流程编排新范式 Solon Flow:一个引擎,七种节点,覆盖规则/任务/工作流/AI 编排全场景
java·workflow
TIEM_6910 分钟前
C++ vector容器全面解析:从入门到精通
开发语言·c++
xiaoye-duck10 分钟前
Qt 入门指南:从Qt历史背景、框架认知到安装和环境搭建
开发语言·qt
Irissgwe11 分钟前
c++多态
开发语言·c++·多态
lingran__11 分钟前
C++_类和对象(上)
开发语言·c++
Aaa1111144316 分钟前
四类地址 逻辑地址 线性地址 虚拟地址 物理地址
java
小则又沐风a16 分钟前
深入了解进程概念 第二章
java·linux·服务器·前端
沐知全栈开发18 分钟前
AngularJS 简介
开发语言
程序猿进阶19 分钟前
OpenClaw Mac 安装教程
java·macos·ai·架构·agent·openclaw