のデフォルト設定でhyperjaxb
は、ハイバネート アノテーションが作成されます。このhibernate
アノテーションは非常に冗長なSQL
ステートメントを生成SQLException
し、最悪の場合は s になり、せいぜいパフォーマンスが低下します。具体的には、CascadeType.ALL
設定はデフォルトのようです。CascadeType
、FetchType
、およびその他のパラメータがカスタマイズされたベースで設定されるように、デフォルト設定をオーバーライドするにはどうすればよいですか? また、schema.xsd ファイル内の何百もの参照をすべて変更する必要がないように、これらのデフォルト変数をグローバル レベルで設定することは可能ですか?
ここに例があります。 次の注釈 Hyperjaxb
を生成しています:hibernate
@ManyToOne(targetEntity = Code.class, cascade = {
CascadeType.ALL
})
@JoinColumn(name = "SOME_CODE1_P_0")
public Code getSomeCode1() {
return someCode1;
}
次のスキーマ フラグメントから:
<xs:complexType name="SomeTypeName">
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="someCode1" type="Code" minOccurs="0"/>
<xs:element name="someCode2" type="Code" minOccurs="0"/>
<xs:element name="someCode3" type="Code" minOccurs="0"/>
<xs:element name="someCode4" type="Code" minOccurs="0"/>
<xs:element name="someCode5" type="Code" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Code">
<!--<xs:sequence>elements with nested data types omitted for simplicity</xs:sequence>-->
<xs:attribute name="code" type="xs:string" use="optional"></xs:attribute>
<xs:attribute name="Name" type="xs:string" use="optional"></xs:attribute>
</xs:complexType>