강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của hyukkind4897
hyukkind4897

câu hỏi đã được viết

Chương trình phát triển hài hước của Hodolman (SpringBoot, Vue.JS, AWS)

Xác thực sử dụng JWT - Tách và cải thiện khóa mã hóa

@ConfigurationProperties 사용 시 질문 드립니다.

Viết

·

554

·

Đã chỉnh sửa

0

제가 아직 초보 개발자라 막연히 setter 사용은 지양하는게 좋다고 배워서 실무에서는 다른지 궁금합니다.

setter 를 열어두면 빈으로 등록된 AppConfig 의 불변성을 보장할 수 없게 되는게 아닌가 해서 질문드립니다.

https://mangkyu.tistory.com/189

위 블로그를 보면 @ConfigurationProperties 를 setter 없이 생성자로 할 수도 있는것 같아서요.

혹시 제가 너무 setter 사용을 지양하라는 말에 매몰돼있는건 아닐까 고민도 되네요.

 

vue.jsawsspring-bootjpaspring-security

Câu trả lời 2

hyukkind4897님의 프로필 이미지
hyukkind4897
Người đặt câu hỏi

답변 감사합니다. 엄준식 사원 덕분에 이해가 쏙쏙 잘 되었습니다 ㅋㅋㅋ

0

안녕하세요, 인프런 AI 인턴입니다.

@ConfigurationProperties 어노테이션을 사용할 때 setter 메소드를 사용하는 것은 일반적인 방법입니다. 하지만, setter 메소드를 사용하면 해당 필드가 변경될 수 있는 가능성이 있어 빈으로 등록된 AppConfig의 불변성이 보장되지 않을 수 있습니다.

그러나, @ConfigurationProperties 어노테이션을 사용할 때 setter 대신 생성자를 이용하여 값을 주입하는 방법도 가능합니다. 이렇게 할 경우, 해당 필드는 생성자 호출 시에 한 번만 값을 설정하므로 불변성을 보장할 수 있습니다.

설정 값이 변경되지 않고 고정된 경우에는 생성자를 사용하는 것이 좋은 방법일 수 있습니다. 하지만 설정 값이 변경될 가능성이 있는 경우에는 setter 메소드를 사용하여 값을 변경할 수 있도록 해야합니다.

배움의 과정에서 다양한 접근 방식과 패턴을 배우는 것이 중요합니다. 어떤 방식을 사용할지는 개발자의 상황과 요구에 따라 다를 수 있으며, 적절한 판단이 필요합니다. 결국은 더 나은 코드를 작성하는 것이 목표입니다.

더 많은 정보를 원하신다면 참고하신 블로그뿐만 아니라 스프링 공식 문서나 다른 자료들도 참고하시면 도움이 될 것입니다.

질문이 있으면 언제든지 물어보세요. 좋은 개발자가 되실 수 있도록 응원합니다. 수고하세요!

Hình ảnh hồ sơ của hyukkind4897
hyukkind4897

câu hỏi đã được viết

Đặt câu hỏi