Hibernate

Udemy MOOC / Non-credit USD 49.99
Enroll now →
Hibernate

About this course

Java - это backend язык программирования, следовательно, разработчиком всегда приходится работать с различными реляционными и не реляционными системами управления базами данных. На курсе по JDBC мы прошли материал, который позволяет нам без подключения дополнительных библиотек, чисто на Java Core работать с реляционными СУБД. Но мы видели, как сложно и единообразно писать маппинг сущностей из SQL запросов в базу данных и, наоборот, когда мы пытаемся сохранить какой-то Java объект в базу данных. Другими словами говоря, мы много занимаемся рутинной работой для ORM (Object Relational Mapping). Более того, единообразен и подход в выполнении CRUD (Create Read Update Delete) операций для всех сущностей.И на помощь нам приходит один из самых актуальных и широко используемых в Java ORM фреймворков - Hibernate.На этом курсе мы изучим, что такое ORM framework, что такое JPA спецификация и как к ней относится Hibernate.Узнаем все основные маппинги сущностей, как реализованы реляционные связи в виде Java аннотаций.Что такое SessionFactory и Session, и как найти соответствие им в JDBC. Мы полностью пройдем жизненный цикл сущностей, узнаем их состояния и почему все вертится вокруг PersistenceContext.Изучим два уровня кеширования в Hibernate, и как решить N+1 проблему!Реализуем собственный слой DAO (и в чем его отличие от слоя Repository), который поможет нам разобраться с тонкостями работы транзакций и зачем использовать DTO при работе с Hibernate. На каждом занятии мы будем заходить в исходный код, чтобы понимать, как все устроено изнутри!

What you'll learn

  • understand the principles of ORM
  • learn to implement JPA with Hibernate
  • perform CRUD operations efficiently
  • manage entity lifecycle and states
  • handle caching strategies in Hibernate
  • resolve N+1 issues
  • create custom DAO layers
  • distinguish between DAO and Repository layers

Course objectives

  • provide a solid foundation in Hibernate and JPA
  • equip learners with practical skills for real-world Java applications

Skills you'll gain

Related courses

Course details are provided by the platform and may change — always confirm on the provider's site. Links may be affiliate links.