Hibernate

event_note Разделов - 14

access_time 48 ак.ч.

art_track Лекций - 82

ondemand_video 12 ч 55 мин

credit_card Стоимость -  3 499 ₽ [[priceDiscountCalc(3499)]] ₽ 3 499 ₽

Описание

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.
  • На каждом занятии мы будем заходить в исходный код, чтобы понимать, как все устроено изнутри!

Преподаватель: Матвеенко Денис

star [[ parseFloat(course.review_score).toFixed(1) ]] group
[[ course.name ]]
[[ course.price_discount ]] ₽ [[course.price]] ₽ [[ course.price ]] ₽ Бесплатно
1. Введение

1. Введение

2. Установка программного обеспечения

3. Настройка проекта

4. Конфигурация SessionFactory

5. Entity

6. Класс Session

7. Type converters

8. Custom attribute converter

9. Custom user type

10. Методы delete/update/get

11. EntityPersister

12. First Level Cache

13. Entity lifecycle. Теория

14. Entity lifecycle. Практика

15. Java Persistence API. JPA

2. Logging

1. Logging. Теория

2. Logging. Файл log4j.xml

3. Logging. File appender

3. Primary keys. Embedded components

1. Embedded components

2. Primary keys

3. EmbeddedId

4. Other basic annotations

4. Mapping entity associations

1. ManyToOne

2. Fetch types

3. Hibernate Proxy

4. Cascade types

5. OneToMany

6. Cascade types with collections

7. Entity equals and hashCode

8. PersistentCollection

9. LazyInitializationException

10. OrphanRemoval

11. OneToOne. Primary key

12. OneToOne. Foreign key

13. ManyToMany

14. ManyToMany. Separate entity

15. Collection performance

16. ElementCollection

17. Collection ordering

18. Maps in mappings

5. Databases in tests

1. In-Memory databases. H2

2. Docker. Testcontainers

6. Mapping inheritance

1. Inheritance. MappedSuperclass

2. Inheritance. TABLE_PER_CLASS

3. Inheritance. SINGLE_TABLE

4. Inheritance. JOINED

7. Hibernate querying

1. HQL. Part 1

2. HQL. Part 2

3. HQL. Практика

5. Querydsl. Настройка

6. Querydsl. Практика

7. Querydsl. Filters

8. N + 1 selects problem

1. N + 1 selects problem

2. @BatchSize

3. @Fetch

4. Query Fetch

5. @FetchProfile

6. Entity Graphs

7. N + 1 selects problem. Best practices

9. Transactions & Locks

1. Введение в транзакции и блокировки

2. JPA Transactions

3. Locks. Optimistic. Part 1

4. Locks. Optimistic. Part 2

5. Locks. Pessimistic

6. Read Only Transactions

7. Nontransactional Data Access

10. Listeners & Interceptors

1. Entity Callbacks

2. Listener callbacks

3. Event listeners

4. Interceptors

11. Hibernate Envers

1. Hibernate Envers. Part 1

2. Hibernate Envers. Part 2

3. Hibernate Envers. Part 3

12. Second Level Cache

1. Second Level Cache. Конфигурация

2. Second Level Cache. @Cache

3. Second Level Cache. Regions

4. Second Level Cache. Query Cache

13. DAO & Repository

1. DAO & Repository. CRUD

2. DAO & Repository. CurrentSessionContext

3. DAO & Repository. Практика

4. DAO & Repository. JSR 303. Bean Validation

14. Conclusion

1. Заключение. Путь развития

Добавить отзыв

Отзывы могут оставлять только те пользователи, которые получили сертификат.

[[ formattedAverageScore ]] star
[[ myReview.owner.last_name ]] [[ myReview.owner.first_name ]]
[[ moment(new Date(myReview.created_at)).format('DD.MM.YYYY в HH:mm') ]]
[[ myReview.text ]]
star star_border
edit delete check_circle watch_later cancel
Причины отклонения в "Условия использования" п. 11.3
Команда: [[ moment(new Date(comment.created_at)).format('DD.MM.YYYY в HH:mm') ]]
[[ comment.text ]]
На данный момент нет отзывов.
[[ review.owner.last_name ]] [[ review.owner.first_name ]]
[[ moment(new Date(review.created_at)).format('DD.MM.YYYY в HH:mm') ]]
[[ review.text ]]
star star_border
Команда: [[ moment(new Date(comment.created_at)).format('DD.MM.YYYY в HH:mm') ]]
[[ comment.text ]]
Загрузить еще