@Resource, @Autowired, @Inject의 공통점은 의존 주입이다.

@Resource

-name 으로 의존성 주입.
-자바에서 지원하는 어노테이션
-프레임워크에 종속적이지 않음

@Autowired

-type으로 의존성 주입.
-스프링 프레임워크에서 지원 하는 어노테이션
-프레임워크에 종속적
-같은 타입인 여러개의 필드는 오류 발생

@Inject

-name으로 의존성 주입. 
-자바에서 지원하는 어노테이션
-프레임 워크에 종속적이지 않음
-이것은 @Resource 랑 다를게 없지만 다른점이라하면 자바에서 지원하는건데 타입으로 연결한다는 점이다.

사용법

사용법은 매우 간단하다. 의존성 주입을 하고싶은 곳에 붙혀주면 된다.

1
2
3
4
5
6
7
8
@Resource
private CustomerService service; //service라는 이름으로 연결됨

@Autowired
private CustomerService service; //CustomerService인 타입으로 연결됨

@Inject
private CustomerService service; //CustomerService인 타입으로 연결됨