먹었으면 뇌를 쓰자
자바에서 getter and setter 쓰는 이유 본문
객체 지향 프로그래밍(OOP)의 가장 큰 특징은 '객체 무결성'을 지키는 것이다.
간단하게 말하면 교실에서 싸움이 일어났을 때,
"우리 반 빼고 나가!!!!"
하는 것이다.
그래서 변수를 선언할 때도 private을 지정해줘서
다른 클래스에서의 접근을 막는다.
하지만 살다보면 다른 클래스에서 우리 클래스 친구를 부를 때가 있다.
setter는 다른 클래스에서 우리 클래스 친구에 접근할 수 있게 한다.
getter는 다른 클래스에서 우리 클래스 친구를 직접 데려갈 수 있도록 한다.
//Person.class와 Address.class가 @OneToMany로 매핑된 상황.
//Person.class는 (mapped by "person"), addresses 인스턴스.
//각 클래스 변수들에 getter and setter 설정함.
[Main.class]
Address address1 = new Address();
address1.setStreet("a street"); // setter - Address.class 접근
address1.setCity("b city");
Person person1 = new Person();
person1.setName("brain"); // setter - Person.class 접근
person1.setAge(20);
person.getAddresses.add(address1); // getter - 인스턴스로 Address.class 읽기
address.setPerson(person1); // setter - Person.class 접근(양방향 연관관계)
em.persist(person1); // One 쪽인 person1 객체 실행
'Framework > JPA' 카테고리의 다른 글
Query dsl - Querying, Join, Paging 구현하기 (+query dsl 5.0.0 fetchResult count 쿼리 작성) (0) | 2022.11.29 |
---|---|
3초 만에 이해하는 @OneToMany 연관관계 헬퍼 메소드 쓰는 법 (0) | 2022.11.28 |
자바 기본 생성자, 인수 생성자는 같이 입력해야 한다 왜냐면... (0) | 2022.11.28 |
JPQL TypedQuery 화면 출력할 때 "이것" 꼭 해줘야 한다 (0) | 2022.11.28 |
자바 헬퍼 메소드(Helpler method) 쉽게 이해하기 (0) | 2022.11.27 |
Comments