27

初めてJAXBとXJCを使用しています。

XMLファイルからJavaクラスを生成したいので、このオンラインヘルパーを使用してXMLファイルからスキーマを生成します。

その後、このコマンドラインを使用してJavaクラスを生成します。

xjc myschema.xsd

それは動作しますが、私は1つのJavaファイルとその中に多くの静的クラスしか受け取りません。これにより、ファイルごとに1つのクラスのみを含む多くのJavaファイルを生成できますか?

ありがとうございました

4

1 に答える 1

52

デフォルトでは、JAXB (JSR-222)は、ネストされた複合型の静的内部クラスを作成して、クラス名の競合を防ぎます。外部バインディング ファイルを使用して、この動作を無効にすることができます。

binding.xml

バインディング ファイルを使用すると、XML スキーマから Java クラスを生成する方法をカスタマイズできます。

<jaxb:bindings
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    version="2.1">
    <jaxb:globalBindings localScoping="toplevel"/>
</jaxb:bindings>

XJCコール

この-bオプションは、バインディング ファイルを指定するために XJC コマンドで使用されます。

xjc -b binding.xml myschema.xsd

詳細については

于 2012-11-01T10:46:24.780 に答える