我需要实现一个产生JSON输出的Web服务。一些序列化的实体需要包含jCard(RFC 7095)。
当前,我正在使用带有eclipselink 2.5.2的JAXB来创建所需的JSON输出,但由于无法确定如何生成所需的JSON结构,因此我坚持使用jCard规范。
为此,我有一个JCard
和一个Property
POJO:
@XmlAccessorType(XmlAccessType.FIELD)
public class JCard {
protected List<Property> vcard = new ArrayList<>();
--- 8< ---
。
@XmlAccessorType(XmlAccessType.FIELD)
public class Property {
protected String name;
protected Object attributes;
protected PropertyType type;
protected List<Object> value;
--- 8< ---
我从中得到的是:
"vcard" : [ {
"name" : "version",
"type" : "text",
"value" : [ {
"type" : "string",
"value" : "4.0"
} ]
} ]
但是我需要的是:
"vcard",
[
["version", {}, "text", "4.0"],
["fn", {}, "text", "John Doe"],
["gender", {}, "text", "M"],
["categories", {}, "text", "computers", "cameras"],
...
]
所以我的问题是,JAXB类看起来如何实现这一目标?