【发布时间】:2018-11-12 21:43:34
【问题描述】:
我们正在使用 Jackson 2.9.4 和 JaxB Annotations 序列化为 JSON。
@XMLElementWrapper 注释未按预期添加额外的包装级别。相反,它只是更改元素的名称。
@XmlRootElement(name = "revision")
class A {
private List<Integer> tickets = Arrays.asList(3,4,5);
@XmlElement(name = "ticket")
@XmlElementWrapper(name = "tickets")
public List<Integer> getTickets() { return tickets; }
}
public void test() throws Exception {
ObjectMapper mapper = new ObjectMapper();
JaxbAnnotationModule jaxbAnnotationModule = new JaxbAnnotationModule();
mapper.registerModule(jaxbAnnotationModule);
A a = new A();
System.out.println(mapper.writeValueAsString(a));
}
预期输出是
{"tickets":{"ticket":[3,4,5]}}
但实际输出是
{“门票”:[3,4,5]}
【问题讨论】:
标签: java json serialization jackson jackson2