Jpa를 활용하여 백엔드 개발을 하다보면 'JPA 영속성 컨텍스트' 혹은 '더티 체킹'이란 말을 종종 들을 수 있습니다. 실제로 얼마전에 회사에서 코드리뷰를 진행하는데 어떤 팀원 분께서 다음과 같이 말씀하셨다. 제가 알기로 JPA는 더티 체킹이라는 걸 해서 변경사항을 감지해 자동으로 update를 해주는 걸로 알고 있는데 왜 한번 더 save를 해줬나요? 이유가 있어요? 그 때 나는 물론 명확하게 답변을 드리지 못했다... 아..? 네..! 그러면 한번 더 save 하지 않고 트랜잭션을 마무리 하도록 하겠습니다. 라고 대충 얼버무렸던 기억이.... 그래서 오늘은 이 Dirty Checking 이라는 것의 개념을 한번 짚고 넘어가려고 합니다. 다음에는 명확히 답변드릴 수 있도록...! 예를 들어 다음과 같..