강의

멘토링

커뮤니티

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

박재민님의 프로필 이미지
박재민

작성한 질문수

스프링 DB 2편 - 데이터 접근 활용 기술

mybatis usegenerateKey

작성

·

306

0

마이바티스로 제너레이트키를 활용해봤는데 의아한 점이 생겼어요

 

log.info("before board = {} , hashcode = {}",board, board.hashCode());

freeBoardRepository.save(board);

log.info("after board = {} , hashcode = {} ",board, board.hashCode());

 

board 가 dao 인자로 들어갈 때를 기준으로 전 후 해시코드값을 비교해봤는데

동일하네요..

 

이게 왜 의문이냐면

Board 객체의 필드는 final로 선언되어 있고 dao에 접근한 뒤,  bno 값을 어떻게;; 넣게되었는지

setter가 없고 생성자도 없고 final 또한 지정되어있고 해시코드마저 동일하니 ㅠㅠ

아래가 객체 정의입니다 ㅠㅠ

도대체 어떻게 bno가 삽입된 걸 까요..

 

@Getter

@Builder

public class FreeBoard {

 

private final int bno;

private final String memberId;

private final String tag;

private final String title;

private final String content;

private final Timestamp regdate;

private final int viewcnt;

private final char showboard;

}

 

 

답변 1

0

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

안녕하세요. 박재민님

이 부분은 저도 잘 모르겠습니다.

혹시 아시는 분 있으면 답변 부탁드립니다.

감사합니다.

박재민님의 프로필 이미지
박재민

작성한 질문수

질문하기