bugfix> java > 投稿

テーブルに2つの関係を持つテーブルctlがあります:psrとpsg。 このテーブルには、PKと同じ名前があります:COD_FILEFE_S

public class Psr{
  @Id
  @Column(name = "COD_FILEFE_S")
  private BigDecimal codFilefeS;
}
public class Psg{
  @Id
  @Column(name = "COD_FILEFE_S")
  private BigDecimal codFilefeS;
}

これを休止状態でマッピングすることは可能ですか? 次のモデルでは、org.hibernate.MappingExceptionがあります:エンティティのマッピングで列を繰り返します:

public class Ctl{
/** The cod filefe s. */
@ManyToOne(targetEntity = Psg.class)
@JoinColumn(name = "COD_FILEFE_S", referencedColumnName = "COD_FILEFE_S", nullable = false)
private BigDecimal codFilefeS;
/** The cod filefe s. */
@ManyToOne(targetEntity = Psr.class)
@JoinColumn(name = "COD_FILEFE_S", referencedColumnName = "COD_FILEFE_S", nullable = false)
private BigDecimal codFilefeSPert;
}

回答 1 件
  • 2つの列に同じ名前を付けたので、このエラーが発生しています。 2番目の列名を変更します。

    public class ctl{
    /** The cod filefe s. */
    @ManyToOne(targetEntity = Psg.class)
    @JoinColumn(name = "COD_FILEFE_S", referencedColumnName = "COD_FILEFE_S", nullable = false)
    private BigDecimal codFilefeS;
    /** The cod filefe s. */
    @ManyToOne(targetEntity = Psr.class)
    @JoinColumn(name = "COD_FILEFE_S_PERT", referencedColumnName = "COD_FILEFE_S", nullable = false)
    private BigDecimal codFilefeSPert;
    }
    
    

あなたの答え