Сообщения

MS Lesson12: n + 1 problem

  package guru.springframework.cruddemo.entity; import jakarta.persistence.CascadeType; import jakarta.persistence. Column ; import jakarta.persistence. Entity ; import jakarta.persistence.FetchType; import jakarta.persistence. GeneratedValue ; import jakarta.persistence.GenerationType; import jakarta.persistence. Id ; import jakarta.persistence. OneToMany ; import jakarta.persistence. OneToOne ; import jakarta.persistence. Table ; import lombok. AllArgsConstructor ; import lombok. Builder ; import lombok. Getter ; import lombok. NoArgsConstructor ; import lombok. Setter ; import lombok. ToString ; import java.util.ArrayList; import java.util.List; @Getter @Setter @Entity @Builder @ToString @NoArgsConstructor @AllArgsConstructor @Table (name = "persons" ) public class Person { @Id @GeneratedValue (strategy = GenerationType. IDENTITY ) private Long id ; @Column (nullable = false ) private String name ; @Column (nullable = false , unique = true ) pri...

MS Lesson11: Entity Manager, Entity relations

Изображение
0. Ön səhnə: DB, connection, transaction (Step-by-step) Təsəvvür et ki, DB = kitabxana, application = kitab gətirən maşın, connection = bu kitabxanaya açılan yol, transaction = “bir dəfəyə gətirmə qaydası”. Connection  açılır. Transaction  başlayır: “bu aralıqdakı iş ya hamısı olur, ya da heç biri”. Əsas qayda: commit  = kitablar həqiqətən rəfə gedir. rollback  = gətirdin, amma “heç nə olmamış kimi” geri qaytarırsan. 1.  EntityManagerFactory  nədir? (Step 1) EntityManagerFactory  = “mətbəx maşınlarının fabrikası”. Bir dənə olur (tipik). Sənə hər transaction üçün uyğun  yeni  EntityManager  yaratmağa  kömək edir. Yəni: EMF = fabrika EM = mətbəx (işin içində baş verir) 2.  EntityManager  nədir? (Step 2) EntityManager  = “iş vərəqi / kassa”. Sən JPA əmrlərini verəndə (find/persist/merge/remove/refresh/detach) “bu vərəq” içində baş verir. Bu vərəqin ən önəmli hissəsi var: 3. Persistence Context nədir? (Step 3 – ən kritik)...