Встречается на собеседованиях • сегодня
Что нужно изменить в сущности для работы составного ключа
Для работы с составным ключом в JPA сущности нужно:
- Создать класс-идентификатор (embedable), помеченный
@Embeddable, содержащий поля составного ключа:
java
@Embeddable
public class EmployeeId implements Serializable {
private String departmentId;
private Long employeeNumber;
// equals() и hashCode()
}- В основной сущности использовать этот класс через
@EmbeddedId:
java
@Entity
public class Employee {
@EmbeddedId
private EmployeeId id;
private String name;
// другие поля
}Ключевые моменты:
- Класс-идентификатор должен быть сериализуемым (implements Serializable)
- Должен корректно реализовывать equals() и hashCode()
- Можно использовать
@IdClassвместо@EmbeddedId, но это менее удобный вариант

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы