唯一约束复合主键在JPA

问题描述:

我有两个外键,我也想为约束 使用一个实体存在的JPA任何方式来定义的约束只会是唯一的,如果 相同FROM_CURRENCY_IDTO_CURRENCY_ID重复,但允许值是否为 反转FROM_CURRENCY_IDTO_CURRENCY_ID唯一约束复合主键在JPA

@Entity 
@Table(name="CURRENCY_CONVERSION") 
public class CurrencyConversion extends BaseEntity { 

    private static final long serialVersionUID = -2440725717151990999L; 

    @ManyToOne(fetch = FetchType.LAZY) 
    @JoinColumn(name = "FROM_CURRENCY_ID") 
    private Currency fromCurrencyId; 

    @ManyToOne(fetch = FetchType.LAZY) 
    @JoinColumn(name = "TO_CURRENCY_ID") 
    private Currency toCurrencyId; 

    @Column(name = "CURRENCY_RATE", nullable = false) 
    private Double rate; 
    // getter setters 

} 

添加唯一约束定义@Table注释

@Table(
    uniqueConstraints= 
     @UniqueConstraint(columnNames={"column_1", "column_2"}) 
)