Простой способ сделать это так:
public void setAvailableCount(Integer availableCount) {
if(availableCount < 0){
throw new IllegalArgumentExcpetion("Must be possive value");
}
this.availableCount = availableCount;
}
Это не создаст ограничение базы данных.
edit:
Если вы используете аннотации JPA, вы можете создать метод @ PrePerist-Annotated:
@PrePersist
public void something(){
if(availableCount < 0){
throw new IllegalArgumentExcpetion("Must be possive value");
}
}
Фиксация должна завершиться неудачно, загрузка должна работать.