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

三 测试

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