Sobes.tech
Назад к вопросам
Junior — Middle
66

Какова роль аннотации @Embeddable в инструментах объектно-реляционного отображения (ORM)?

Компании, где спрашивали
DCloud

Ответ от нейросети

sobes.tech AI

Аннотация @Embeddable в ORM (например, в JPA/Hibernate) используется для обозначения класса, который не является самостоятельной сущностью, а встраивается в другую сущность как часть её состояния.

Роль @Embeddable:

  • Позволяет группировать связанные поля в отдельный класс для удобства и переиспользования.
  • Поля класса с @Embeddable становятся колонками в таблице родительской сущности.
  • Упрощает структуру модели данных, избегая создания отдельной таблицы.

Пример:

@Embeddable
public class Address {
    private String street;
    private String city;
    private String zipCode;
    // геттеры и сеттеры
}

@Entity
public class User {
    @Id
    private Long id;

    @Embedded
    private Address address;
    // другие поля
}

В этом примере поля Address будут храниться в таблице User как обычные колонки.