inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

관심 주제 등록 기능 구현

관계 테이블 저장 오류 관련하여 질문드립니다.

264

BeomSeok Seo

작성한 질문수 1

0

안녕하세요. 강의 정말 잘 듣고 있습니다. 

조회에서 조회가 안 되길래,  로그를 보니, tag 테이블에는 저장되고 있으나,  account와 tag의 관계를 저장하게 되는 account_tags 테이블에 저장을 하지 않는 것을 확인했습니다.  ( 로그에 해당 insert문이 없는 것 확인 )

그래서 accountService.addTag 에서 가장 하단에 accountRepository.save(account);를 추가 해 주니,

해당 테이블에 insert도 정상적으로 되고, 조회도 되는 것을 확인했습니다.

강의 들으며, 동일하게 코딩했다고 생각하고 있습니다만 이러한 차이가 발생하는 것이, 버전이 변경되면서 변경점이 생긴 것인지, 제가 잘못 한 부분이 있는 것인지 판단이 안 되네요.

더불어, 제 코드가 잘못 된 것이라면, 관계 테이블에는 tagRepository에서 save 할 때 같이 저장되는 것인지,

accountService.addTag 메소드의 byId.ifPresent~~~  시점에 저장되는 것인지도 궁금합니다.

그럼 활기찬 나날되세요~

저장 java spring spring-boot JPA thymeleaf

답변 1

0

백기선

안녕하세요.

"그래서 accountService.addTag 에서 가장 하단에 accountRepository.save(account);를 추가 해 주니,

해당 테이블에 insert도 정상적으로 되고, 조회도 되는 것을 확인했습니다."

=> 코드를 보고 말씀드리는게 아니라서 정확하진 않지만 혹시 AccountService에 @Transational이라는 애노테이션이 적용되어 있나요? 해당 애노테이션이 없는 경우 객체 변경 내역을 JPA 적용하지 않고 끝냈었다가 이후에 명시적으로 save를 호출해주어 DB에 적용된 것 같은 정황으로 들립니다.

관계 테이블에는 트랜잭션이 끝날 때 account의  tags 객체가 바뀐것을 JPA가 감지하고 insert 쿼리를 발생시킵니다. 정확한 SQL과 SQL 실행 타이밍이 궁금하시다면 디버거를 사용해 보시면 좋습니다.

감사합니다.

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

0

71

1

앱 재시작 후 회원가입

0

120

1

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

0

106

1

강의 버전 정보

0

136

1

event, study 참조

0

236

2

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

0

143

1

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

0

115

1

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

0

509

3

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

0

260

2

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

0

437

2

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

0

271

2

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

0

243

1

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

0

284

1

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

0

294

2

authentication관련 질문...

0

503

2

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

0

359

3

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

0

236

1

HTML코드 및 강의 중간자료들

0

687

3

springSecurity

0

529

2

버전 질문입니다.

0

308

1

부트스트랩, css

0

361

2

영속성 컨텍스트 질문

0

255

2

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

0

357

2

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

0

320

1