Согласно документации JBoss ,
Атрибут уникального ключа можно использовать для группировки столбцов в одном ограничении уникального ключа. Атрибут переопределяет имя любого сгенерированного ограничения уникального ключа.
Типичный вариант использования для unique-key будет, когда вы хотите, чтобы значения нескольких столбцов в целом были уникальный.
Например:
class Department {...}
class Employee {
Integer employeeId;
Department department;
}
Итак, , чтобы гарантировать, что 2 объекта Employee с тот же employeeId и отдел не будут сохранены , мы можно использовать атрибут unique-key с тем же значением EmpIdDept для 2 столбцов EMP_ID и DEPT_ID to для применения ограничения уникальности для них в целом :
<property name="employeeId" column="EMP_ID" unique-key="EmpIdDept"/>
<many-to-one name="department" column="DEPT_ID" class="Department" unique-key="EmpIdDept"/>
Строка, указанная в качестве значения атрибута, т. Е. IDX_AMT_COND_01 в вашем случае, это просто имя уникального ограничения для нескольких столбцов.
Также отметьте этот ответ и этот (чтобы добиться того же, используя @UniqueConstraint)
ПРИМЕЧАНИЕ: использовать уникальный столбец уникально ограничение, вам нужно использовать unique = "true"