Intro ⭐ Spring을 사용하다 보면 @Component, @Service, @Repository 차이에 대해 한 번쯤 고민하게 됩니다. 처음에는 단순히 "다 Bean 등록 아니야?"라고 생각하기 쉽지만, 실제로는 설계 구조와 유지보수에 큰 영향을 주는 개념입니다. 이번 글에서는 단순 개념 설명을 넘어서 실무에서 언제 어떻게 써야 하는지까지 정리해보겠습니다. @Component @Component는 Spring에서 가장 기본이 되는 어노테이션으로, 클래스를 Bean으로 등록하는 역할을 합니다. 특정 계층에 속하지 않는 공통 기능 클래스에서 주로 사용됩니다.@Componentpublic class CommonUtil { public String hello() { return "hel..
Intro ⭐ Spring을 사용하다 보면 Bean 객체를 생성하고 주입받아 사용하는 경우가 대부분입니다.특히 Spring Bean Lifecycle(빈 생명주기)은 객체가 언제 생성되고, 언제 초기화되며, 언제 소멸되는지를 결정하는 중요한 개념입니다.예를 들어, 서버 기동 시 공통 코드를 미리 캐싱하거나, 외부 API 연결을 초기화하는 작업은 Bean Lifecycle을 이해해야만 올바르게 구현할 수 있습니다. 하지만 많은 경우 생성자와 초기화 시점(@PostConstruct)의 차이를 정확히 이해하지 못해 의도하지 않은 오류가 발생하기도 합니다.이번 글에서는 Spring Bean Lifecycle의 전체 흐름과 함께, 실무에서 자주 사용하는 초기화/소멸 방법을 정리해보겠습니다. Spring Bean..