提问者:小点点

如何在Jackson中获得“类似JAX-B”的XMLRootElement类名包装器


当使用JAXB-JSON序列化pojo时,它可以将根元素名称包装在对象数据周围。例如:

@XmlRootElement(name="worker")
public class Employee {
    private int id;
    private String name; //...
}

可以给出JSON,例如:

{"工人":{"id": 1,"名称":"Ashraf"}}

使用Jackson JSON序列化有哪些方法可以实现这一点?


共1个答案

匿名用户

我找到了答案。适用于Jackson 2.2及以上版本

您需要按如下方式配置DTO类:

@JsonRootName(value = "worker")

您需要按如下方式配置jackson对象映射器:

mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, true);

对于旧版本,请参阅此处:使用根元素进行Jackson JSON反序列化