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

public display님의 프로필 이미지
public display

작성한 질문수

스프링 핵심 원리 - 기본편

빈 생명주기 콜백 시작

NetworkClient setUrl 질문

작성

·

216

3

빈 생명주기 콜백 예시 중 빈 생성후 연결단계에서 setUrl로 연결처리 해주셨는데..
한가지 궁금한건 이전 강의에서 싱글톤 주의점으로
외부에서 빈의 변수를 수정할 수 있으면 바뀔 수 있는 위험이 있으니 저렇게 setUrl을 퍼블릭 메소드로 두면 안되지 않나요?
그런데 또 NetworkClient 생성자에 url 파라메터로 주지말고 역할을 따로 줘야한다고 해서 두가지가 헷갈랍니다.

답변 1

0

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

안녕하세요. public display님

맞습니다. 그래서 생성자를 사용하는게 더 좋습니다. (또는 빌더 패턴 등등)

그런데 생성자만으로 100% 설정이 가능하지 않을 수도 있고, 필수 값이 아닌 경우 몇가지 고민이 될 수 있습니다.

이런 경우 객체를 생성하고, 필요한 프로퍼티를 setXxx로 설정하고, 그 다음에 실행하는 방식으로 진행하면됩니다.

대신에 메뉴얼에 어떤 것이 설정 값인지 이런 부분을 잘 적어두어야 합니다.

감사합니다.

public display님의 프로필 이미지
public display

작성한 질문수

질문하기