Выпуск 154. Что такое Embeddable-классы в Hibernate/JPA.

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025

Комментарии • 19

  • @alexander.karetnikov
    @alexander.karetnikov 3 года назад +1

    Спасибо! Частота появления новых выпусков радует!)

  • @torvlobnorpuzdoy2198
    @torvlobnorpuzdoy2198 3 года назад +2

    HD появилось , это радует отдельно )

  • @lisafox9026
    @lisafox9026 9 месяцев назад

    просто совет .. если вы объясняете про @Embeddable и @Embedded, просто сделать ID и колонки для этих двух аннотаций
    и НЕ более того.. очень сложно высматривать суть среди большого незнакомого количества кода...

  • @vitkupri5324
    @vitkupri5324 3 года назад

    Огромное спасибо, за Ваш труд. Так получилось что вынужден искать новый проект в работе, а значит и повышать свои навыки. У Вас так построены лекции, что все понятно. Если можно и у Вас будет желание, покажите пожалуйста подобное начало проекта на спринге, только используя то, что генерится на их сайте (например проект с Tomkat и H2). Лично мне кажется что они там перемудрили и без Вашей помощи пока буксую. Заранее спасибо!

    • @java8599
      @java8599  3 года назад

      Не очень понял вопрос - если речь идет о том, что "генерится на сайте", то это SpringBoot наверно. Или я что-то не так понял.
      Если речь идет о приложении с испольованием Spring - начиная с выпуска 121 или 153 в этом же плейлисте.

    • @vitkupri5324
      @vitkupri5324 3 года назад

      @@java8599 Да, все верно поняли, именно там есть проблемы в зависимости от набора компонент, которые набираешь для изучения и часто это такой blackbox, что перерыв подобные ошибки в инете так и не находишь ответа как пофиксить IllegalStateException и продолжить работу с проектом. Буду дальше копать глубже. Спасибо за ответ!

  • @ВладимирСавенко-о7в

    Добрый день. Наследование вынесено на сторону hibernate?

    • @java8599
      @java8599  3 года назад

      Не понял вопрос.

  • @АртёмЗыков-ю5й
    @АртёмЗыков-ю5й 2 года назад +2

    Нихера не понял. Так что такое Embeddable-классы, нужна ли таблица для этого класса, как происходит все это? Несколько раз пытался черпать инфу с этого канала, результат прежний. Смысл и правила использования Embeddable не раскрывается.

    • @java8599
      @java8599  2 года назад +1

      Не нужна таблица. Идея в следующем: есть таблица. В ней есть запсь о персоне 1 и персоне 2. Это не отдельные таблицы - для персоны 1 и персоны два набор колонок одинаковый, но имена конечно же разные. Для жены и мужа. У жены все начинается с "w_", у муха - "h_". Но смысл этих колонок олинаковый - например имя, фамилия, отчество. Тогда можно создать класс, который будет отображаться на некий абстрактный набор колонок - он и есть Embeddable, а потом уже для конкретной таблицы его можно прописать по-настоящему.

    • @АртёмЗыков-ю5й
      @АртёмЗыков-ю5й 2 года назад

      @@java8599 Т.е. мы в этот класс выносим часть таблицы и используем потом в других сущностях. Например, контактную информацию из таблицы мы можем вынести в класс и использовать его, с помощью аннотаций, в других сущностях. Я правильно понимаю?

    • @java8599
      @java8599  2 года назад

      @@АртёмЗыков-ю5й Близко к истине. Мы как бы группируем набор колонок (возможных, абстрактных) в один класс и такой набор колонок мы можем использовать для ДРУГОЙ РЕАЛЬНОЙ таблицы. И что крайне важно - у нас есть возможность переименовать эти колонки, если в другой таблице эти колонки называются по-другому. Т.е. если у нас есть ФИО, то мы можем создать класс, который мы можем "внедрить" (embed) в любой класс, который реально отображается на таблице и в этой таблице есть колонки ля ФИО. Причем названия колонок не должны обязательно совпадать.
      Таким образом, если есть много таблиц с колонками для ФИО, мы может использовать один и тот же класс ля всех этих таблиц.

    • @АртёмЗыков-ю5й
      @АртёмЗыков-ю5й 2 года назад

      @@java8599 Я вот не могу найти толково информации где можно подробно прочесть про это. Официальная документация очень сложная. Может у вас есть где прочесть подробно?

    • @java8599
      @java8599  2 года назад

      @@АртёмЗыков-ю5й В нашем проекте мы сделали еще интереснее - у нас в ОДНОЙ таблице есть одинаковые группы колонок - ФИО, дата рожления и т.д. Для мужа и жены. Это два ВЗРОСЛЫХ и данные об обоих находтся в одной таблице. Колонки разные, но их назначение одинаковое. И мы использовали Embedded класс для того, точбы было удобно - мы создем двух ВЗРОСЛЫХ (муж и жена) и записываем их в рзаные колонки одной и той же таблицы.