私はまだ設計段階ですので、現時点ではコードスニペットはありません。JAXBを使用してXML内のあるクラスから複数の要素を複数の要素に分割する
コンテキスト
私は3つの主な要素と約25のパラメータ(主に属性といくつかの値)と、比較的複雑なXMLを構成するアプリケーションを書いています。多くのカスタムタイプがありますので、XJCは約15クラスを生成します(ほとんどの場合、文字列または制約にいくつかの制約が追加されています)。 編集:私が話しているこれら3つの要素を含むルート要素が1つあります。
これは、ユーザーがスキーマで許可されているさまざまな種類のさまざまなバリアントを生成できるようにすることを目的としています。だから私は基本的にスイングフォームを作成し、最終的に入力されたデータに基づいてXMLを作成する必要があります。
フォームの25の異なるフィールドをオブジェクトのツリー構造にマップするのは実用的ではありません(特に、属性の多くはオプションなので、オブジェクトの一部は存在しないはずです)。ユーザは何かを入力する)。
したがって、スイングフォームのデータを1つのBean(または少数)に保存してから、JAXBがマーシャリングするいくつかの表現を作成するのが最善の方法です。
質問
JAXBは1つのBeanと直接その1つのクラスから取られた属性と値のすべてを持つ3つの要素を作成することを取るように説得する方法はありますか?
編集:いくつかの議論の後、別の方法で質問することができます:オブジェクトモデルをフラット化する方法はありますか?
これら3つの主要な要素は、単一の所有者XMLの一部ですか?もしそうなら、はいJAXBがそのトリックを行うことができます。それ以外の場合は、Beanを取得して複数のXMLファイルを作成したい場合、それは扱いにくく、もっと重要なことです。 – kgdinesh
はい、これらの3つの要素はルート要素でラップされています。私は道があることを願っています。手ですべてをまとめるのはかなり不愉快なことでしょう。 – bajermi2