持っている、
class RadicadoOficio {
@ManyToMany(fetch=FetchType.LAZY)
@JoinTable(name="cor_radicado_localidad", joinColumns=@JoinColumn(name="ano_radicado"), @JoinColumn(name="num_radicado")}, inverseJoinColumns=@JoinColumn(name="interno_localidad")})
private List<Localidad> localidades;
}
class Localidad {// does not reference RadicadoOficio. unidirectional relationship }
asume ano_radicadoはint(anoはやや年を意味します)であり、numは文字列です(実際には文字を含むことができる「数値」です)
sqlを生成します:ano_radicado=2012およびnum_radicado=AX33であるcor_radicado_localidadから削除します
それは良いことです。
ただし、RadicadoOficioのjoinColumnsの順序を変更すると、次のようになります。
joinColumns=@JoinColumn(name="num_radicado"), @JoinColumn(name="ano_radicado")},
取得:cor_radicado_localidadから削除します。ここでano_radicado=AX33およびnum_radicado=2012
それは良くないね。
私の知る限り、マッピング内の結合列の順序は重要ではなく、生成されるSQLはどちらの場合も同じである必要があります。私は何かが足りないのですか?tnx