본문 바로가기
Spring

Spring Annotation 6. @Autowired

by Status Code 2023. 4. 19.

스프링에서 @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

댓글