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

황지호님의 프로필 이미지
황지호

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

일대다 [1:N]

연관관계 매핑 관련 질문 - 읽기 전용 매핑

작성

·

201

0


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

[질문 내용]
연관관계 매핑 수업을 듣다가 읽기 전용 필드,매핑이란 게 정확히 뭔지 잘 모르겠습니다.

예를 들어 섹션6.다양한 연관관계 매핑 수업에서 일대다 양방향 설명해 주실때 Member클래스에 team 이라는 읽기 전용필드를 사용했는데 읽기 전용 필드가 값을 변경할 순 없고 읽기만 가능하다고 하셨는데

Q1. 읽기 전용 필드가 정확히 어떤걸 변경할 수 없고 읽기만 가능하다는 건가요??

team.setXX()처럼 객체에서 값을 변경할 수 없다는 건가요??

Q2. Team클래스의 members 가 연관관계 주인이라서 members.add(member)이런식으로 해야 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 나가고 team.setTeam(team) 이런식으로 하면은 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 안나간다는 건가요??

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

읽기 전용 필드, 매핑에 대해 궁금하신 것 같네요.

Q1. 읽기 전용 필드가 정확히 어떤걸 변경할 수 없고 읽기만 가능하다는 건가요?? team.setXX()처럼 객체에서 값을 변경할 수 없다는 건가요??

읽기 전용 필드는 해당 필드에 대해 값을 변경할 수 없고, 읽기만 가능한 필드를 말합니다. 즉, team.setXX()와 같이 해당 필드에 대해 값을 변경하는 메소드는 사용할 수 없으며, 값을 읽는 것만 가능해요.

Q2. Team클래스의 members 가 연관관계 주인이라서 members.add(member)이런식으로 해야 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 나가고 team.setTeam(team) 이런식으로 하면은 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 안나간다는 건가요??

맞아요. 연관관계 주인인 members에 대해 값을 변경하는 메소드를 이용하면, 연관된 테이블의 FK를 업데이트할 수 있어요. members.add(member)와 같이 엔티티의 연관된 필드에 값을 추가하거나 변경할 때, 해당 연관 테이블의 FK에 대한 업데이트 쿼리가 실행됩니다. 그러나 team.setTeam(team)과 같이 연관관계의 주인이 아닌 곳에서 값을 변경할 경우, 해당 FK에 대한 업데이트 쿼리가 발생하지 않습니다.

더 자세한 내용은 연관관계 매핑 수업에서 자세히 다루고 있으니, 해당 강의를 통해 더 많은 정보를 얻을 수 있으실 거에요.

추가로 궁금한 점이 있다면 언제든지 물어보세요. 도움이 되었기를 바라요.

황지호님의 프로필 이미지
황지호

작성한 질문수

질문하기