要素名としてキーを使用してマップを XML にマーシャリングする
JAXB は、オブジェクトを XML にマップする便利な方法を提供します。ただし、マップの場合は、通常、ネストされた
場合によっては、要素名としてキーを使用し、要素の内容として値を使用して Map to XML をマーシャリングすることができます。
動的属性名のアドレス指定
カスタム マーシャリングおよびアンマーシャリングを処理するために JAXB 開発者が提供する推奨アプローチには、 XMLアダプター。ただし、動的属性名を処理するアダプターの実装は困難な場合があります。
代替ソリューション
このような XML の生成は、インターフェイス コントラクトに影響するため、一般的に推奨されません。考えられる解決策はいくつかあります:
1.キーに列挙型を使用する:
マップ キーの列挙型を定義します。これにより、コンパイル時に XSD に既知の要素のリストが確実に含まれるようになります。
2.デフォルト構造の簡素化:
MapAdapter を使用して、Map をキーと値の属性を含む MapElement の配列に変換します。これにより、XML 構造が
結論
動的要素名を使用して XML を生成することはお勧めできませんが、提供されている代替案は、この動作が問題となる特定のシナリオに対するソリューションを提供します。希望します。
以上がJAXB で要素名としてキーを使用してマップを XML にマーシャリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。