inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링과 JPA 기반 웹 애플리케이션 개발

회원 가입 인증 메일 확인

회원가입 인증 메일 확인

511

devskky

작성한 질문수 16

0

accountService 애서

processNewAccount 을

Account newAccount = saveNewAccount(signUpForm);;
newAccount.getGenerateEmailCheckToken();
accountRepository.flush();
sendSignUpConfirmEmail(newAccount);

로하면

@Transactional 을 메서드 상단에 선언을 안해도 해결이 가능한데요.

@Transactional 를 사용하지않고

강제로 플러시를 해준경우에 추후에 문제가 될만 소지가 있을까요?

java spring spring-boot jpa thymeleaf

답변 2

0

도루크막토

먼저 jpa 에는 1차 캐시가 존재하는데요

동일 transaction 안에서 발생한 상태에서는 쓰기지연 으로

실제 save를 날려도 commit 시점에 데이터가 저장되게 됩니다.

flush를 사용하게되면 강제로 insert 합니다.

 

예를 들어서

em.persist(entity1)

em.flush

em.persist(entity2);

 

했을경우 flush를 안했을때는 insert가 나중에나중에 나가지만 flush를 하면 바로 실행됩니다.

이점 참고 바랍니다.

 

0

백기선

흠.. 글쎄요. 마치 트랜잭션 처리를 선언적으로 할 것이냐 코딩으로 할 것이냐의 선택 같은데요. 직접 관리하는 경우에 쓰라고 만들어둔게 flush()니까 그렇게 쓰셔도 될 것 같네요.

Study 개설하는 로직에 대해서 궁금점이 있습니다.

0

56

1

앱 재시작 후 회원가입

0

104

1

app.host 관련 질문이 있습니다

0

98

1

강의 버전 정보

0

127

1

event, study 참조

0

222

2

비밀번호 변경 로직 질문있습니다.

0

136

1

프로필 수정 처리 merge 질문입니다.

0

108

1

회원가입 성공 후 redirect이동시 권한 질문

0

498

3

HtmlEmailService 개발하다 생긴 의문입니다

0

252

2

postgreSql 연결하여 JPA 를 통해 테이블 생성시 ZONE 테이블 생성에서 에러가 납니다

0

432

2

수업질문 [긴급] 로그인안되는 문제 말씀해주시는 부분 반영해서 최종 질문드립니다

0

265

2

[긴급-재업로드]수업질문 로그인 안 되는 문제

0

237

1

[긴급] 로그인해도 네비게이션 바가 안 바뀌고 있습니다!! 로그인이 안 됩니다 도와주세요

0

278

1

cropper 오류 문제로 질문드립니다..

0

289

2

authentication관련 질문...

0

498

2

모임참가 취소 할때 로직 질문

0

351

3

안녕하세요 기선님 질문이있습니다..

0

230

1

HTML코드 및 강의 중간자료들

0

680

3

springSecurity

0

525

2

버전 질문입니다.

0

304

1

부트스트랩, css

0

357

2

영속성 컨텍스트 질문

0

252

2

다시 강의를 보니 드는생각..

0

355

2

5:50에 나오는 HTML코드는 어디서 찾을 수 있나여?

0

316

1