В JPA2 вы можете добавить ограничение Unique непосредственно к полю:
@Entity
@Table(name="PERSON_TABLE")
public class Person{
@Id
@Column(name = "UUID")
private String id;
@Column(name = "SOCIALSECURITY", unique=true)
private String socialSecurityNumber;
@Column(name = "LOGINID", unique=true)
private String loginId;
}
ИМХО, гораздо лучше назначить уникальное ограничение непосредственно атрибутам, чем в начале таблицы.
Однако, если вам необходимо объявить составной уникальный ключ, то единственной возможностью является его объявление в аннотации @table
.