작성
·
71
1
안녕하세요.
변경감지 기능을 사용하기 위해서 데이터 베이스 통신해서 데이터를 가져와서 쓰는 것과 기존에 set으로 BookForm 객체 만드는 것에 대해서 여쭤보고 싶은게 있습니다.
데이터베이스 통신이 한 번 더 일어나는데 위험성이 증가하거나 하진 않나요..? 옛날에 사수한테 웬만하면 데이터베이스 통신하는 일을 줄이라고 했던 일이 기억나서 여쭤봅니다
답변 2
1
안녕하세요. 마이티님, 공식 서포터즈 코즈위버입니다.
데이터베이스 내용을 수정할 때 기존 방식은 UPDATE 한 번만 통신 하면 되는데, JPA 에서는 SELECT 이후 UPDATE 하여 두 번 통신이 발생하는 부분에 대한 비효율을 질문하신것 같습니다.
말씀하신것처럼 어플리케이션과 데이터베이스 간의 통신은 큰 비용이 발생하기에 최소화 하는것이 가장 좋습니다. 그러나 JPA를 사용하는 입장은 JPA를 도입하여 얻는 이점이 쿼리 횟수를 줄이는 것보다 크다고 여기는 것입니다. 그리고 JPA에서 데이터베이스를 조회, 업데이트 할 경우에는 반드시 키를 이용하도록 제한하므로 최적화 면에서 아주 크게 나빠지지는 않습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
마이티님의 질문은 JPA를 사용하면서 변경 감지 기능의 이해와 관련해, 데이터베이스로부터 데이터를 가져오는 것과 객체를 직접 생성하는 것 사이의 차이, 특히 데이터베이스와의 통신을 최소화하는 관점에서의 고려사항에 대한 조언을 구하는 것으로 이해됩니다.
이와 관련하여, 데이터베이스 통신 효율성과 변경 감지 기능을 어떻게 효과적으로 사용할 수 있는지에 대한 명확한 가이드라인을 제공하는 기존 답변을 찾았습니다.
이러한 답변들을 참고하시면, 데이터베이스 통신을 최소화하는 동시에 변경 감지 기능을 효과적으로 활용하는 방법에 대한 좀 더 깊은 이해를 얻을 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.