강의

멘토링

커뮤니티

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

visionwill님의 프로필 이미지
visionwill

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

스프링 JdbcTemplate

db에 쿼리를 이용해서 데이터를 넣은 후에 , 다시 객체에 member.setId() 를 하는 이유가 있나요 ?

작성

·

265

1

db에 쿼리를 이용해서 데이터를 넣은 후에 , 다시 객체에 member.setId() 를 하는 이유가 있나요 ?

답변 1

0

안녕하세요, visionwill 님. 공식 서포터즈 codesweaver 입니다.
.
save 메서드에서 쿼리를 실행한 이후 member.setId()를 하는 부분에 대한 질문인것 같습니다.

Member객체에 대한 키(예제에서는 id) 는 데이터베이스에 저장된 이후에만 알 수 있습니다. 그래서 executeAndReturnKey() 라는 메서드를 통해 데이터베이스 저장을 수행하고 그 뒤에 Member에 할당된 키 값을 반환하도록 하는 것입니다. 이후 save를 호출한 곳에서는 이 id값이 설정되어있는지 아닌지에 따라 분기를 주거나 프로세스를 예외처리 하거나 할 수 있습니다.
.
감사합니다.

visionwill님의 프로필 이미지
visionwill

작성한 질문수

질문하기