[英]Join multiple XML elements to one java object
Is it possible to join some xml elements to a java object (using JAXB)? 是否可以将某些xml元素连接到Java对象(使用JAXB)?
The following xml is given (out of my controll): 给出了以下xml(出于我的控制):
<root>
<user>
<user_name>John</user_name>
<user_lastname>Doe</user_lastname>
<org_name>ABC</org_name>
<org_street>Street 123</user_street>
</user>
</root>
Desired result: 所需结果:
@XmlRootElement(name = "root")
public class FileXML{
@XmlElement(name = "user")
private List<User> users;
}
public class User{
@XmlElement(name = "user_name")
private String name;
@XmlElement(name = "user_lastname")
private String lastname;
// ???
private Org org;
}
public class Org{
@XmlElement(name = "org_name")
private String name;
@XmlElement(name = "org_street")
private String street;
}
I don't think there is an existing JAXB annotation for what you are asking. 我认为您所要求的没有现有的JAXB批注。 There is custom annotations from custom libraries but I guess you want to stay with JAXB standard. 有来自自定义库的自定义注释,但我想您想保留JAXB标准。
You could try this code (not tested) : 您可以尝试以下代码(未经测试):
public class User{
...
@XmlElement(name = "street")
public String setStreet(String street) {
this.org.setStreet(street);
}
}
But it's clearly a workaround and not the best solution. 但这显然是一种解决方法,而不是最佳解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.