스프링에서 @Autowired 사용법 및 예제
@Autowired는 스프링(Spring) 프레임워크에서 사용되는 어노테이션으로, 자동 의존성 주입(Automatic Dependency Injection)을 수행합니다. 이 어노테이션을 사용하면 개발자가 직접 의존성을 주입하는 코드를 작성할 필요 없이, 스프링이 자동으로 필요한 빈(Bean)을 주입해 줍니다. 이를 통해 개발자는 비즈니스 로직에 집중할 수 있습니다.
예제
1. 서비스 클래스 생성
import org.springframework.stereotype.Service;
@Service
public class GreetingService {
public String getGreeting(String name) {
return "안녕하세요, " + name + "님!";
}
}
위의 예제에서 @Service 어노테이션을 사용하여 GreetingService 클래스를 스프링 빈으로 등록합니다.
2. 컨트롤러 클래스 생성 및 @Autowired 사용
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class AutowiredExampleController {
@Autowired
private GreetingService greetingService;
@GetMapping("/greeting")
public String greeting(@RequestParam(name = "name", required = false, defaultValue = "홍길동") String name) {
return greetingService.getGreeting(name);
}
}
위의 예제에서 @Autowired 어노테이션을 사용하여 GreetingService 인스턴스를 자동으로 주입합니다. 이를 통해 greeting() 메서드에서 GreetingService의 getGreeting() 메서드를 사용할 수 있습니다.
이처럼 @Autowired를 사용하면 스프링이 자동으로 의존성을 주입해 주어 개발자는 비즈니스 로직에만 집중할 수 있습니다. 이를 통해 더욱 간결하고 유지보수하기 쉬운 코드를 작성할 수 있습니다.
'Spring' 카테고리의 다른 글
Spring Annotation 8. @ComponentScan (0) | 2023.04.19 |
---|---|
Spring Annotation 7. @Transactional (0) | 2023.04.19 |
Spring Annotation 5. @RequestParam (0) | 2023.04.19 |
Spring Annotation 4. @PathVariable (0) | 2023.04.19 |
Spring Annotation 3. @ResponseBody (0) | 2023.04.19 |
댓글