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 分钟前
手撕小汇总
java·前端·javascript
初願致夕霞4 分钟前
C++懒汉单例设计详解
服务器·开发语言·c++
脱胎换骨-军哥16 分钟前
C++分布式系统设计:从通信引擎到分布式共识
开发语言·c++·分布式
唐青枫23 分钟前
Java Kafka 实战指南:从 Topic、分区到 Spring Boot 可靠消息处理
java
脱胎换骨-军哥1 小时前
C++零成本抽象理论深度拆解:现代C++如何在不牺牲性能的前提下提供高级语法封装
java·开发语言·c++
lbb 小魔仙1 小时前
VS Code Python 高级调试技巧:从入门到精通
开发语言·python
我是唐青枫2 小时前
Java Netty 实战指南:从 NIO 线程模型到 TCP 编解码和心跳机制
java·tcp/ip·nio
方便面不加香菜2 小时前
C++ 模板进阶
开发语言·c++
小白说大模型2 小时前
从向量嵌入到复杂 Agent:LLM、LangChain、LangGraph 完整科普
java·开发语言·人工智能·gpt·深度学习·langchain
豆浆D油条2 小时前
QT容器类QList调用erase崩溃
开发语言·qt·rpc