inflearn logo
강의

Course

Instructor

의존 관계 주입 @Autowired vs @Inject

341

katfun

1 asked

0

안녕하세요! 스프링의 의존 관계 주입에 대해서 공부하다가 의문점이 생겨서 질문을 남깁니다.
스프링에서 의존 관계를 주입하는 어노테이션은 @Resources, @Inject, @Autowired 세 가지가 있는 것으로 보이는데,
이 중 @Inject와 @Autowired에 대해 궁금증이 생겼습니다.
 
대부분 강의나 작성된 코드를 보면 @Autowired를 많이 사용하시는 것으로 보입니다.
제가 파악한 둘의 차이점은 아래와 같습니다.
* @Autowired는 스프링 프레임워크에서 제공하지만, @Inject는 JSR-330 표준 어노테이션이다.
* @Autowired는 required = false로 설정할 수 있다.
* @Autowired가 먼저 생겼고, 이후에 @Inject가 생겼다. 따라서 오래된 버전의 스프링에서는 @Autowired를 사용한다.
 
이렇다 보니, (거의 그럴 일이 없지만) Spring에서 다른 DI 컨테이너로 변경하는 경우 @Inject는 그대로 사용할 수 있지만, @Autowired는 사용할 수 없는 것으로 보입니다.
그럼에도 강의 내에서, 그리고 많은 스프링 코드들이 @Autowired를 사용하는 이유를 알 수 있을까요?
 
감사합니다!

spring di dependency 인젝션 의존 관계 주입

Answer 0

서비스에서와 컨트롤러의 @Vaild 적용 차이에 대해서

0

21

2

copilot-instruction.md

0

22

2

"폴더를 찾을 수 없습니다." 라는 응답만 계속 나옵니다.

0

43

1

EmailSender 관련 문의

0

55

1

조회 메서드 네이밍 질문

0

65

1

Properties 설정이 추가되었는데

0

38

1

isInterrupted 질문 있다.

0

34

1

fieldInjectionTest() 질문

0

55

1

AutoAppConfig의 존재이유

0

49

1

RunIdIncrementer batch 5랑 6랑

1

60

2

AppConfig와 스프링 빈 질문

0

53

1

강의 자료를 받아볼 순 없겠나

1

77

2

핵사고날 아키텍처 기반으로 멀티 모듈 설계 시 질문드립니다..

0

74

2

자료 다운로드 문제

0

73

2

인넬리제이 무료버전

0

66

2

DataSourceUtils.releaseConnection 할때요 SQLException e 사용하는 이유등

0

86

2

수업자료 오타

0

75

2

Post, PostEntity에서 User, UserEntity 의존

0

60

1

이클립스 스프링 환경설정 오류

0

93

2

내부 객체 직접 접근에 관하여.

0

104

2

CertificationServiceTest

0

56

1

FlushModeType.COMMIT (12:45) 예시코드 질문

0

66

1

클로드코드 명령어 - 대화&세션관리부분 강의자료 빈폴더

0

72

1

Spock given and가 검증을 하는지

0

65

1