требования к Entity
жц Entity
There are mainly four states of the Hibernate Lifecycle :
Transient State
Persistent State
Detached State
Removed State
Cascade
CascadeType.ALL
PERSIST
MERGE
REMOVE
REFRESH
DETACH
ACID
Атомарность (Atomicity) - все операции транзакции должны быть выполнены или не выполнены вообще.
Согласованность (Consistency) - транзакция должна приводить базу данных в согласованное состояние.
Изолированность (Isolation) - каждая транзакция должна работать в изолированном режиме, т.е. изменения, внесенные одной транзакцией, не должны видны другим транзакциям до тех пор, пока первая транзакция не будет завершена.
Долговечность (Durability) - после успешного завершения транзакции изменения должны сохраняться в базе данных.
Transaction read phenomena
dirty
non repeatable
phantom
Isolation
Read Uncommitted
Read Committed - Postgres, Oracle
Repeatable Read - MySql
Serializable
как реализуются условия в SpringData repository
transaction propagation
n+1
The N+1 problem is the situation when, for a single request, for example, fetching Users, we make additional requests for each User to get their information.
Eager Fetch, JOIN FETCH
Creating separate methods, SQL and JPQL queries can help tailor them for each case.
hibernate assertSelectCount(1)
Join types
INNER JOIN, OUTER JOIN, CROSS JOIN, and SELF JOIN