jaxbunmarshaller - xml to class java online
Cómo obtener el atributo xml con JAXB (1)
este es mi xml:
<?xml version="1.0" encoding="UTF-8" ?>
<organization>
<bank>
<description>aaa</description>
<externalkey>123</externalkey>
<property name="pName" value="1234567890" />
</bank>
</organization>
Usé JAXB y unmarshall para este xml y puedo obtener una descripción y una clave externa. Pero no puedo obtener el nombre de la propiedad con valor.
Esta es mi clase de java para unmarshall:
JAXBContext jb = JAXBContext.newInstance(Organization.class); Unmarshaller um = jb.createUnmarshaller(); Organization org = (Organization) um.unmarshal(new File("//upload//bank999999.xml")); System.out.println(org.getBank().getDescription()); System.out.println(org.getBank().getExternalkey());
Organización.java
@XmlRootElement public class Organization { Bank bank = new Bank(); public Bank getBank() { return bank; } public void setBank(Bank bank) { this.bank = bank; } }
Bank.java
@XmlRootElement public class Bank { private String description; private String externalkey; private String property; //..GETTER and SETTER }
¿Cómo puedo obtener el nombre y el valor de la propiedad? Gracias
Banco
Necesita cambiar la property
propiedad de un String
a un objeto de dominio.
@XmlAccessorType(XmlAccessType.FIELD)
public class Bank {
private String description;
private String externalkey;
private Property property;
}
Propiedad
Entonces su objeto de Property
se vería así:
@XmlAccessorType(XmlAccessType.FIELD)
public class Property {
@XmlAttribute
private String name;
@XmlAtrribute
private String value;
}