我有表格,下面是代码片段。
package test;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
@Entity
@Table(uniqueConstraints = { @UniqueConstraint(columnNames = "code")},
name = "coupons")
public class Coupon implements Serializable {
private static final long serialVersionUID = 5534534530153298987L;
@Id
@GeneratedValue
@Column(name = "id")
private long id;
@Column(name = "available_count")
private Integer availableCount = 1;
public Integer getAvailableCount() {
return availableCount;
}
public void setAvailableCount(Integer availableCount) {
this.availableCount = availableCount;
}
}
如何进行约束以允许 availableCount
仅为非负数?
最佳答案
如果您需要一个实际的数据库约束,并且您的模式是由 Hibernate 生成的,您可以使用 @Check
注释:
@Entity
@Table(uniqueConstraints = { @UniqueConstraint(columnNames = "code")},
name = "coupons")
@Check(constraints = "available_count >= 0")
public class Coupon implements Serializable { ... }
关于java - Hibernate 非负值约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4725149/