인터넷 강의를 듣고 공부한 내용을 포스팅합니다.
'윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정' 이란 강의를 듣고 있습니다.
주입
전에 배운 것 처럼 bean에 대한 주입은 생성자를 통하거나, setter를 이용하여 값을 주입했었습니다. Annotation은 어떻게 다른지 확인해 보겠습니다.
생성자를 통한 주입
@Bean
public TestBean1 java1() {
return new TestBean1(200,"문자열2" ,new DataBean1());
}
자바이기 때문에 그냥 생성자 호출해주면 됩니다!
Setter를 사용한 주입
@Bean
public TestBean1 java2() {
TestBean1 t1 = new TestBean1();
t1.setData1(400);
t1.setData2("문자열4");
t1.setData3(new DataBean1());
return t1;
}
setter를 사용한 주입 역시 그냥 넣어주면 돼죠.
자동주입
@Bean(autowire = 주입방식)를 사용해주면 됩니다.
Autowire.BY_NAME :이름을 통한 자동주입
Autowire.BY_TYPE : 타입을 통한 자동 주입
스프링 5.1부터 더 이상 사용되지 않게 되었습니다. 5.1부터는 bean에 직접 설정하는 방식을 추천하고 있습니다.
@Bean
public DataBean2 data1() {
return new DataBean2();
}
@Bean
public DataBean2 data2() {
return new DataBean2();
}
@Bean(autowire = Autowire.BY_NAME)
public TestBean2 java3() {
return new TestBean2();
}
@Bean
public DataBean3 data100() {
return new DataBean3();
}
@Bean(autowire = Autowire.BY_TYPE)
public TestBean3 java4() {
return new TestBean3();
}
끝!!
'Spring' 카테고리의 다른 글
Annotation(어노테이션) JSR-250 어노테이션 (0) | 2021.07.23 |
---|---|
Annotation(어노테이션)을 이용한 빈 설정 (0) | 2021.07.23 |
Annotation(어노테이션) 자바 코드를 이용한 bean 등록 (0) | 2021.07.19 |
DI(Dependency Injection) 자동주입 (0) | 2021.07.18 |
DI(Dependency Injection) Setter메서드를 통한 주입 (0) | 2021.07.17 |