Маппинг сущностей
Как Java-класс связывается с таблицей
Spring Data JDBC умеет строить маппинг по соглашениям: класс соответствует таблице,
а его свойства — столбцам. Если имена в Java и базе различаются, связь можно указать явно аннотациями.
Главная специальная часть модели — идентификатор сущности, помеченный @Id.
@Table("customers")
class Customer {
@Id
Long id;
@Column("full_name")
String name;
boolean active;
}
Здесь объект Customer связан с таблицей customers,
поле name — со столбцом full_name,
а active может быть сопоставлен по соглашению об именах.
Маппинг — это часть контракта со схемой
Аннотации не создают магически подходящую структуру данных для любого класса. Типы столбцов, ограничения, ключи и сама схема базы должны соответствовать модели приложения. Когда имя или структура меняются, важно рассматривать Java-класс и SQL-схему как две стороны одного контракта.
Не добавляйте аннотацию только ради явности.
Если соглашение Spring Data JDBC уже однозначно связывает свойство с нужным столбцом,
лишний mapping часто только увеличивает шум в модели.
Проверь себя
Разбор задания
Ментор знает решение и поможет тебе прийти к нему самостоятельно
Войди, чтобы использовать Ментора
Ментор учитывает текущую задачу и историю диалога.
Войти
Проверь важные нюансы и ответ после собственной попытки.
Войди, чтобы посмотреть решение
Решение и разбор доступны после авторизации.
Войти