0

Betwixt を使用して Java クラスから XML を出力し、.betwixt ファイルを使用してマッピングを構成しています。

このような XML を出力する必要があります (サード パーティの DTD に準拠する必要があります。

<data>
   <Status>Active</Status>
   <StatusCount>3</StatusCount>
   <Status>InActive</Status>
   <StatusCount>5</StatusCount>
   <Status>Banned</Status>
   <StatusCount>1</StatusCount>
</data>

私のクラスには、StatusCount オブジェクトのリストを返すメソッドがあります

List<StatusCount> getStatusCounts() {

私の StatusCount オブジェクトには次のものがあります。

String getStatusName() { ... }
String getStatusCount() { ... }

必要な出力を得るために betwixt 構成を解決できません。Status/StatusCount ノードの各ペアをラップする余分な要素を取得しますが、これは望ましくありません。

この要素を持たないことは可能ですか?助けてくれてありがとう!

4

1 に答える 1

0

特定の形式が可能だとは思いません。つまり、次から次StatusへとStatusCount来ることを保証することはできません。

ただし、次のようなStatusCount2 つのリストを持つXML 表現とオブジェクトをバインドするクラスを作成することはできます。String

public class StatusCountProxy {
    private List<String> statusName = new ArrayList<String>();
    private List<String> statusCount = new ArrayList<String>();
}

これらの文字列から、ペアを作成できます。これにより、指定された xml を betwixt で逆シリアル化できるようになります。Status同じ形式にシリアル化するには、オブジェクトとオブジェクトを作成する必要がある場所を少しハックしてStatusCountから、それらをペアで書き出す必要があります。

于 2012-08-13T10:44:39.173 に答える