어노테이션
두개이상 겹쳐서 사용할 수 있다
@Required
메서드명 위에 기술하며, 이 메소드를 반드시 호출해야 된다는 의미
@Autowired
메서드, 멤버변수, 생성자 위에 기술하며, 자동으로 의존객체를 얻어서 저장시켜준다는 의미로
자료형을 기준으로 객체를 찾아 가져온다(byType)
byType 이 자식 자료형이나 구현한 객체여도 상관없다
-멤버 변수, 생성자에 선언한 경우
생성자나 세터메소드등을 작성하지 않고, xml에서도 태그를 생략해도 자동으로 값을 저장시켜준다
-메서드에 선언한 경우
xml에서 property태그나 p네임스페이드를 생략해도 자동으로 값을 저장시켜준다
@Autowired(required=false) -> 자동으로 의존성 객체를 얻어와 넣어주는데, 없으면 넣어주지 않아도 된다(에러발생x)
@Autowired(required=true) -> 기본값으로, 무조건 값을 넣어줘야한다(가져올 객체가 없으면 에러발생)
기본값이 requred 이므로 해당되는 객체가 없거나 두개 이상일 경우에는 에러가 발생한다
@Inject
@Autowired와 기능이 같다
사용하기 위해서는 pom.xml에 기술해야 한다(메이븐에서 다운받을 수 있도록 dependency 작성)
최근 @Autowired를 대신하여 더 많이 사용한다
@Resource
이름을 기준으로 객체를 찾아 가져온다(byName)생성자, 메소드, 멤버변수 등에 지정이 가능하다형식) @Resource(name="빈즈 id")
'Spring' 카테고리의 다른 글
[Spring]Mybatis 개념, 특징(+jdbc) (0) | 2021.04.05 |
---|---|
[Spring]어노테이션)@PostConstruct, @PreDestroy, @Component, @Configuration, @Bean (0) | 2021.03.31 |
[Spring]DI설정) byType, byName, 추상, 상속 (0) | 2021.03.29 |
[Spring]DI설정) Set, Properties, Map 객체 자료형 (0) | 2021.03.29 |
[Spring]DI설정) 객체 참조, List객체 자료형 (0) | 2021.03.25 |