Sprint 에서 @ Autowired 와 @ Resource 주해 의 차이

Spring 은 자신 이 정의 한 @ Autowired 주 해 를 지원 할 뿐만 아니 라 JSR - 250 규범 에 의 해 정 의 된 주 해 를 지원 합 니 다. 각각 @ Resource, @ PostConstruct, @ PreDestroy 입 니 다.@ Resource 의 역할 은 @ Autowired 에 해당 합 니 다. @ Autowired 는 by Type 에 따라 자동 으로 주입 되 고 @ Resource 는 기본적으로 by Name 에 따라 자동 으로 주입 되 는 것 입 니 다. @리 소스 는 두 가지 속성 이 비교적 중요 합 니 다. name 과 type 으로 나 뉘 는데 Spring 은 @ 리 소스 주해 의 name 속성 을 bean 의 이름 으로 해석 하고 type 속성 은 bean 의 유형 으로 해석 합 니 다.따라서 name 속성 을 사용 하면 by Name 의 자동 주입 정책 을 사용 하고 type 속성 을 사용 할 때 by Type 자동 주입 정책 을 사용 합 니 다.name 도 지정 하지 않 고 type 속성 도 지정 하지 않 으 면 반사 체 제 를 통 해 by Name 자동 주입 정책 을 사용 합 니 다.@ Resource 조립 순서 1. name 과 type 을 동시에 지정 하면 Spring 컨 텍스트 에서 유일 하 게 일치 하 는 bean 을 찾 아 조립 하고 찾 지 못 하면 이상 을 던 집 니 다. 2. name 을 지정 하면 컨 텍스트 에서 이름 (id) 이 일치 하 는 bean 을 찾 아 조립 하고 찾 지 못 하면 이상 을 던 집 니 다. type 을 지정 하면컨 텍스트 에서 형식 이 일치 하 는 유일한 bean 을 찾 아 조립 합 니 다. 찾 을 수 없 거나 여러 개 를 찾 으 면 이상 이 발생 합 니 다. 4. name 도 지정 되 지 않 고 type 도 지정 되 지 않 으 면 자동 으로 by Name 방식 으로 조립 합 니 다.일치 하지 않 으 면 원본 형식 으로 되 돌아 가 일치 하고 일치 하면 자동 으로 조립 합 니 다.
@ Autowired 와 @ Resource 의 차이 점:
 
1、 @Autowired 와 @ Resource 는 bean 을 조립 하 는 데 사용 할 수 있 습 니 다. 필드 에 쓰 거나 setter 방법 에 쓸 수 있 습 니 다.
2、 @Autowired 는 기본적으로 유형 별로 조립 합 니 다 (이 주 해 는 업 스프링 에 속 합 니 다). 기본 적 인 상황 에서 의존 대상 이 존재 해 야 합 니 다. null 값 을 허용 하려 면 required 속성 을 false 로 설정 할 수 있 습 니 다. 예 를 들 어 @ Autowired (required = false). 만약 에 우리 가 이름 을 사용 하려 면 @ Qualifier 주 해 를 결합 하여 사용 할 수 있 습 니 다. 다음 과 같 습 니 다.1 @Autowired () @Qualifier ( "baseDao" ) 2 private BaseDao baseDao;
3. @ Resource (이 주 해 는 J2EE 에 속 합 니 다). 기본 설치 이름 을 조립 할 수 있 습 니 다. 이름 은 name 속성 을 통 해 지정 할 수 있 습 니 다. name 속성 이 지정 되 지 않 으 면 주 해 를 필드 에 쓸 때 기본 으로 필드 이름 을 가 져 와 설치 이름 을 찾 습 니 다. 주 해 를 setter 방법 에 쓰 면 기본 으로 속성 이름 을 가 져 와 조립 합 니 다.이름과 일치 하 는 bean 을 찾 을 수 없 을 때 만 유형 에 따라 조립 합 니 다.그러나 주의해 야 할 것 은 name 속성 이 지정 되면 이름 에 따라 만 조립 된다 는 것 이다.1 @Resource (name= "baseDao" ) 2 private BaseDao baseDao;
추천 사용: @ Resource 주 해 는 필드 에 있 습 니 다. 그러면 setter 방법 을 쓰 지 않 아 도 됩 니 다. 또한 이 주 해 는 J2EE 에 속 하여 spring 과 의 결합 을 감소 합 니 다.이런 코드 는 보기에 비교적 우아 하 다.

좋은 웹페이지 즐겨찾기