JAXB prend en charge nativement le regroupement d'une carte dans une structure comme celle-ci :
<map> <entry> <key> KEY </key> <value> VALUE </value> </entry> <entry> <key> KEY2 </key> <value> VALUE2 </value> </entry> ... </map>
Cependant, dans certains cas, il peut être nécessaire de générer du XML là où le la clé devient un nom d'élément et la valeur devient son contenu, comme ceci :
<map> <key> VALUE </key> <key2> VALUE2 </key2> ... </map>
Il est généralement conseillé d'éviter ce type de génération XML car il introduit une dépendance sur le contenu de la carte au moment de l'exécution. Cela peut avoir un impact sur les contrats d'interface définis dans le schéma XML (XSD).
Envisagez plutôt d'utiliser un type énuméré comme clé de la carte pour garantir que les noms des éléments sont connus au moment de la compilation, permettant ainsi à JAXB de générer un schéma. qui restreint les éléments dans le XML.
Pour simplifier la structure générée par défaut en quelque chose comme :
<map> <item key="KEY" value="VALUE"/> <item key="KEY2" value="VALUE2"/> </map>
Implémentez un MapAdapter personnalisé qui convertit la carte en un tableau de MapElements.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!