작성
·
153
0
스프링 데이터 JPA 실습하다가 궁금한점이 있어 질문드립니다.
아래와 같은 코드를 실행하면 member 값이 null 나오고, Board와 Member 순서를 바꾸면 제대로된 값이 나오는데 왜 그런건가요? 강의를 듣다가 제가 놓친 부분이 있는거 같은데 어디를 놓친걸까요? 영속성 컨텍스트와 관련있는 걸까요?
Board {
...
// 단방향 관계
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id")
private Member member;
...
}
이 상황에서
public String ....() {
...
Board board = boardService.findBoard(boardId);
Member member = memberService.getMemberByLoginId(memberName);
...
}
(참고로 둘다 service단에서는 @Transactional이 되어 있습니다. getMemberByLoginId의 경우 memberName과 LoginId를 비교해서 일치하는 member를 주는 메소드입니다.)