je travaille avec Hibernate qui n'arrive pas à spécifier le nom des contraintes de clé étrangère.
voici le code:

@ElementCollection(fetch = FetchType.LAZY)
@CollectionTable(name = "payroll_plan_payroll_constants", joinColumns = { @JoinColumn(name = "payroll_type", referencedColumnName = "payroll_type"),
@JoinColumn(name = "payroll_plan_number", referencedColumnName = "payroll_plan_number") }, foreignKey = @ForeignKey(name = "fk_payroll_plan_payroll_constants_payroll_plan"))
@MapKeyJoinColumn(name = "payroll_item_id", nullable = false, foreignKey = @ForeignKey(name = "fk_payroll_plan_payroll_constants_payroll_item"))
@Column(name = "value", nullable = false)
@NotNull(message = "Valeur de la constante de paie manquante !")
@SortNatural
private SortedMap<ConstantPayrollItem, Double> payrollConstants = null;

le script en base de données est le suivant:
CREATE TABLE public.payroll_plan_payroll_constants
(
payroll_plan_number bigint NOT NULL,
payroll_type integer NOT NULL,
value double precision NOT NULL,
payroll_item_id bigint NOT NULL,
CONSTRAINT payroll_plan_payroll_constants_pkey PRIMARY KEY (payroll_plan_number, payroll_type, payroll_item_id),
CONSTRAINT fk976bhcvmsfylwpnx5gjr45341 FOREIGN KEY (payroll_item_id)
REFERENCES public.constant_payroll_item (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_payroll_plan_payroll_constants_payroll_plan FOREIGN KEY (payroll_plan_number, payroll_type)
REFERENCES public.payroll_plan (payroll_plan_number, payroll_type) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
on comme nom de contraint fk976bhcvmsfylwpnx5gjr45341 au lieu de fk_payroll_plan_payroll_constants_payroll_item"
si quelqu'un peut m'aider.
Merci d'avance.