Там существует, собственное в спящем режиме аннотация для определения ограничительных имен Внешнего ключа, которые используются во время поколения DDL: org.hibernate.annotations.ForeignKey
.
Существует ли также способ указать ограничительные имена Первичного ключа?
Невозможно со стандартным JPA и не поддерживается Hibernate для ограничений первичного ключа.
На самом деле существует очень старая проблема с этим запросом функции ( HB-1245 ), но похоже, что она не привлекает особого внимания.
Если вы говорите о выборе имени вашего первичного ключа (в базе данных), Hibernate не может не сделать это.
Помните, Hibernate - это среда, которая в первую очередь ориентирована на отображение объектов, а не на создание / обслуживание сущностей базы данных.
Что касается определения первичного ключа, может быть полезна следующая ссылка (в частности, 2.2.3.2): Сопоставление свойств идентификатора в руководстве JBoss Hibernate