2017-10-18 14 views
-1

Je le code XML suivant qui doivent désorganiser:JAXB unmarshalling même élément XML, mais différentes Childs

<data> 
    <property> 
     <name>Color</name> 
     <value>Red</value> 
     <value>Green</value> 
    </property> 
    <property> 
     <name>Size</name> 
     <description> 
      <num>10</num> 
      <uom>cm</uom> 
     </description> 
    </property> 
</data> 

Comment puis-je en ce désorganiser POJO DataModel?

Merci.

+0

exemple: https: //howtodoinjava.com/jaxb/jaxb-exmaple-marshalling-and-unmarshalling-list-or-set-of-objects/. très facilement trouvé en utilisant Google –

+0

Non, ce n'est pas le cas comme dans le lien. Ici chaque 'property' a un' name' (qui est partagé) mais a 'value' ou' description' - donc ce sont deux objets différents – iseif

Répondre

0

Dépend de l'approche utilisée. "haut-bas" ou "bas-haut".

« en bas » signifie que vous avez XSD où vous définir des éléments value et description comme choice ou vous pouvez avoir seulement deux éléments facultatifs value et description droit dans le type d'élément property. Dans ce cas, jaxb génère le POJO approprié pour vous.

"bottom-up" vous devez d'abord faire la même chose dans POJO et y ajouter les annotations jaxb en conséquence.

BTW: Si vous n'êtes pas sûr de savoir comment faire « bottom-up », mais qui veulent aller avec elle - juste faire XSD simple, générer POJO et vérifier comment JAXB annota ...