인프런 커뮤니티 질문&답변

김명기님의 프로필 이미지
김명기

작성한 질문수

스프링 DB 1편 - 데이터 접근 핵심 원리

트랜잭션 - 적용2

connection 반환 관련하여 질문 드립니다.

작성

·

456

1

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

 

아래의 코드는 강의 코드 중 커넥션을 풀로 반환하는 로직입니다.

 

해당 코드에서는 커넥션 반환 중 예외가 발생했을 때 처리하는 별도의 코드가 없는 것으로 판단됩니다.

만약 con.close()가 정상 수행되지 않고, 예외가 발생한다면, 그 후 어떤 과정이 진행되는지 궁금합니다.

그냥 계속해서 사용된 커넥션이 active 상태로 유지되는 건가요?

항상 답변 해주셔서 감사합니다.

답변 1

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 김명기님

커넥션을 종료하거나 풀에 반환하는 메서드가 con.close()입니다. 그런데 이 내부에서 예외가 발생한다면 이 문제는 해당 라이브러리가 해결해야 하는 책임을 가지게 됩니다.

커넥션을 풀에 반환하는 과정은 단순히 메모리 상에서 동작하는 과정이 대부분이기 때문에 문제가 일어날 가능성은 거의 없습니다.

감사합니다.

김명기님의 프로필 이미지
김명기
질문자

답변 감사합니다!

김명기님의 프로필 이미지
김명기

작성한 질문수

질문하기