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

김상엽님의 프로필 이미지
김상엽

작성한 질문수

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

객체와 테이블 매핑

JPA 기본생성자와 관련된 질문입니다.

작성

·

201

0

안녕하세요 영한님! 강의 정말로 잘듣고 있습니다. 좋은강의 올려주셔서 감사합니다.

강의를 듣다가 궁금한점이 생겨서 질문을 작성하게 됬습니다.
강의에서 @Entity를 이용하려면 기본생성자가 필요하며, 이는 내부적으로 Reflection기술을 이용하기 때문이라는 사실을 알았습니다.
궁금한점은 만약 Setter메서드가 없다면 JPA쪽에서 어떻게 객체에 나머지 필드에 값을 넣어줄 수 있을까? 라는 의문입니다.

제가 생각할때 Java에서 필드에 값을 대입할 수 있는 방법은 4가지가 존재합니다.
1. 접근제어자를 Public으로 선언 후 값 할당
2. 생성자를 통한 값 할당
3. Setter메서드를 통한 값 할당
4. Reflection의 setAccessible()메서드를 호출 후 값 할당

위의 4가지 방법이 떠오르는데, 제 생각에는 4번 방법으로 값을 대입할것 같다는 생각이 듭니다!

혹시 위의 4가지 방법외에도 값을 할당할 수 있는 다른 방식이 있거나 JPA는 값을 할당하기 위해서 다른방식을 이용한다면 답변해주시면 감사하겠습니다 ㅠㅠ.

답변 1

1

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

안녕하세요. 상엽님^^

저도 4번 방법으로 알고 있습니다.

감사합니다.

김상엽님의 프로필 이미지
김상엽

작성한 질문수

질문하기