1

のデフォルト設定でhyperjaxbは、ハイバネート アノテーションが作成されます。このhibernateアノテーションは非常に冗長なSQLステートメントを生成SQLExceptionし、最悪の場合は s になり、せいぜいパフォーマンスが低下します。具体的には、CascadeType.ALL設定はデフォルトのようです。CascadeTypeFetchType、およびその他のパラメータがカスタマイズされたベースで設定されるように、デフォルト設定をオーバーライドするにはどうすればよいですか? また、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>
4

1 に答える 1