1
У меня есть следующая сущность, на которой я хотел бы, чтобы имя столбца было уникальным. По какой-то причине Hibernate не генерирует никаких уникальных ограничений при автогенерации таблицы. Любые идеи относительно того, почему Hibernate не применяет это уникальное ограничение? Я запускаю MySQL 5.5 и Hibernate 4.2.0 на JBoss EAP 6.1.Hibernate не создает уникальное ограничение
@Entity
@Table(name = "Address", uniqueConstraints = @UniqueConstraint(columnNames = { "Name" }))
public class AddressEntity {
private int id;
private String name;
private String streetAddress;
private String country;
private String city;
private String zip;
@Id
@GeneratedValue
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Column(name = "Name", unique = true, nullable = false)
public String getName() {
return name;
}
// getters and setters...
}
Нет, к сожалению это не работает. Я пробовал разные комбинации. Сначала с @Column (name = "Name", unique = true), затем с @UniqueConstraint (columnNames = {"Name"}), затем с обоими, а затем с @Column (name = "Name", unique = true, nullable = false). Ничто не работает. – user2664820
Попробуйте поместить это на 'seters' или' variable' вместо 'getters'. – user2550754
Безразлично. – user2664820