Spring 프레임워크에서는 의존성 주입(Dependency Injection, DI)을 통해 객체 간 결합도를 낮추고 테스트 가능성을 높이는 방식을 권장합니다. 일반적으로 Spring 컨테이너가 관리하는 Bean에 의존성을 주입하는 경우가 많지만, 직접 인스턴스화한 객체(Self-Instantiated Object)에 의존성을 주입해야 할 때도 있습니다.이 글에서는 self-instantiated 객체에 의존성을 주입하는 방법에 대해 자세히 알아보겠습니다.1. 문제 상황Spring 애플리케이션을 개발할 때 new 키워드를 사용하여 직접 객체를 생성해야 할 때가 있습니다. 예를 들어, 특정 라이브러리나 프레임워크가 직접 인스턴스화된 객체를 요구하는 경우입니다. 이 경우 해당 객체가 Spring 컨텍스트에..
Spring 프레임워크에서 의존성을 주입하는 방법 중 많이 사용하는 두 가지 어노테이션은 @Resource와 @Autowired입니다. 이 둘은 비슷한 역할을 하지만, 사용 목적과 동작 방식에서 몇 가지 중요한 차이가 있습니다. 이 글에서는 두 어노테이션의 차이를 비교하고, 어떤 상황에서 어떤 어노테이션을 사용해야 하는지에 대해 설명하겠습니다.1. @Resource@Resource는 Java의 JSR-250 표준 어노테이션으로, Spring뿐만 아니라 다른 의존성 주입 프레임워크에서도 사용할 수 있습니다.주요 특징이름 기반 주입: 기본적으로 빈 이름을 기준으로 의존성을 주입합니다.표준 어노테이션: Spring 전용이 아닌, Java EE 표준입니다.설정 방식:@Resource(name = "beanNam..