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

제트브레인님의 프로필 이미지
제트브레인

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

변경 감지와 병합(merge)

change 언급하실때

작성

·

253

4

itemService 에서 change 메서드 호출해서 넣어주고,

Book 엔티티 쪽에서 

change 메서드를 만들어주었습니다.

기능은 정상 동작하나, 이게 최적된 방법인지는 잘 모르겠습니다.

강사님이 말씀하신 변경감지를 이용한 부분인데, 컨펌한번 받아보고자 이렇게 올렸습니다. 조언부탁드립니다 . 감사합니다.

답변 3

1

아 감사합니다 ㅎㅎ 

1

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

fD님 아주 잘 하셨습니다^^!

굿굿!

혹시

this.setName(name);

대신에 this.name = name; 같은 식으로 적어도 괜찮을까요?

검색해보니 setter를 통한 검증 같은게 추가적으로 필요없다면 바로 이렇게 필드값을 배정해도 된다고 하는 것 같아서요. 긴가민가하여 댓글 남깁니다..!

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

안녕하세요. 미지수님

this.name = name를 사용해도 되지만 JPA를 사용한다면 가급적 setName(...)을 사용하시는 것이 좋습니다.

JPA의 경우 때때로 프록시 라는 것이 사용되는데요. 이때 setXxx를 사용해야 프록시가 정상 동작합니다.

감사합니다.

오!!! 정말 감사합니다 ◡̈

0

안녕하세요 김영한 강사님! 
코드를 보고 추가적으로 질문 사항이 생겨서 질문 드립니다!!
김영한 강사님께서 Setter의 사용은 지양하신다고 하셨는데,
여기서 Book과 같은 Entity에서는 Setter를 사용하여도 큰 상관이 없는 건가요? 

허접한 질문 드리는 것 같아서 부끄럽네요ㅎㅎ

제트브레인님의 프로필 이미지
제트브레인

작성한 질문수

질문하기