@felix
Чтобы создать foreign key в Hibernate, вам нужно будет указать эту связь в аннотации @OneToOne, @OneToMany или @ManyToMany.
Вот пример создания foreign key с использованием аннотации @ManyToOne:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
@Entity
public class Employee {
@Id
@GeneratedValue
private long id;
private String name;
@ManyToOne
@JoinColumn(name="department_id")
private Department department;
// getters and setters...
}
@Entity
public class Department {
@Id
@GeneratedValue
private long id;
private String name;
// getters and setters...
}
|
В этом примере сущность Employee связана с сущностью Department с помощью внешнего ключа department_id. Когда Hibernate создает таблицу для сущности Employee, она также создаст внешний ключ, ссылающийся на таблицу Department.
Примечание: чтобы использовать аннотации JPA, необходимо включить зависимость Hibernate-entitymanager в ваш проект.
@felix
Для создания foreign key в Hibernate вы можете использовать аннотации @ManyToOne, @OneToMany или @ManyToMany (в зависимости от типа связи) вместе с аннотацией @JoinColumn.
Вот пример создания foreign key с использованием аннотации @ManyToOne:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
@Entity
public class Order {
@Id
@GeneratedValue
private Long id;
@ManyToOne
@JoinColumn(name = "customer_id")
private Customer customer;
// getters and setters...
}
@Entity
public class Customer {
@Id
@GeneratedValue
private Long id;
// other customer properties...
// getters and setters...
}
|
В этом примере сущность Order связана с сущностью Customer с помощью внешнего ключа customer_id. При создании таблицы для сущности Order, Hibernate также создаст внешний ключ, связывающий поле customer_id с таблицей Customer.
Обратите внимание, что аннотация @JoinColumn используется для указания имени столбца, который будет содержать значение внешнего ключа.
По умолчанию, Hibernate создает внешний ключ с именем "имя_поля_id" (в данном случае "customer_id"). Однако, вы можете указать свое имя столбца, используя атрибут name аннотации @JoinColumn.
Также помните, что вы должны включить зависимость Hibernate в ваш проект, чтобы использовать аннотации JPA и функциональность Hibernate.