Обычно в корпоративном стеке администраторы баз данных не разрешают и не должны разрешать создание системных объектов в своей базе данных. Обычно они запрашивают, чтобы DDL были вставлены вручную, и вы установите ddl-auto приложений Hibernate в режим update , а не в режим создания или создания-отбрасывания. Это идеальный сценарий для большинства брендов, с которыми я работал. Сказав это, вы можете позволить администратору БД решить переименовать ограничения через операторы alter-table, которые Hibernate сгенерирует для вас. Кроме того, имена ограничений первичного ключа также будут управляться администраторами баз данных после передачи им DDL таблицы создания.
Если вы находитесь в роли полного стека, где решаете все, вы можете изменить имя внешнего ключа только в текущих выпусках, используя аннотацию @ForeignKey.
Но я все равно рекомендовал бы ручную вставку операторов DDL в вашу базу данных вместо того, чтобы позволить системному процессу взять на себя управление, поскольку поддержание базы данных и ее фрагментирование упрощается, если применяется архитектура DBA вручную.
Надеюсь, это ответит на ваш вопрос.