
준영속 상태 준영속 상태란, 영속상태의 엔티티가 영속성 컨텍스트에서 분리된 것이다. 준영속 상태가 되면 영속성 컨텍스트가 제공하는 기능(dirty checking)을 사용하지 못한다. 준영속 상태로 만드는 방법 em.detach(entity) 특정 엔티티만 준영속 상태로 전환한다. Member findMember = em.find(Member.class, 2L); // 현재 member의 name은 hello이다. findMember.setName("hyuuny"); // findMember를 준영속 상태로 변경한다. em.detach(findMember); System.out.println("member : " + findMember); tx.commit(); findMember의 name을 "hyuu..

플러시(flush 플러시(flush)는 영속성 컨텍스트의 변경 내용을 데이터베이스에 반영하는 것이다. 데이터베이스 transaction commit이 발생하면 자동 플러시(flush)가 발생한다. 플러시는 영속성 컨텍스트의 변경 내용을 데이터베이스에 동기화하는 것이지 영속성 컨텍스트를 비우는 것은 아니다. transaction이라는 작업 단위가 있기 때문에 플러시(flush)가 동작 가능한것이다. 플러시(flush) 발생 플러시(flush)가 발생하면 다음과 같은 일이 발생한다. 1. 변경 감지(Dirty checking) 발생 2. 수정된 엔티티의 내용을 쓰기 지연 SQL 저장소에 등록 3. 쓰기 지연 SQL 저장소의 query를 데이터베이스에 전송(등록, 수정, 삭제) 영속성 컨텍스트 플러시(flus..
- Total
- Today
- Yesterday
- 인프런
- 코틀린
- 정렬
- 구현
- 노마드
- 알고리즘
- leetcode
- 북클럽
- MySQL
- 스프링부트
- 스프링
- spring boot
- 데이터베이스
- 자료구조
- 리팩토링
- 백준
- 문자열
- mysql 8.0
- webflux
- 파이썬
- kotlin
- Algorithm
- Spring
- 스프링 부트
- Real MySQL
- 그리디
- 릿코드
- 김영한
- 코테
- 노마드코더
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |