Spring Core 모듈의 주요 Annotation
https://docs.spring.io/spring-framework/reference/
1. 계층 구성 어노테이션
@Controller, @Service, @Repository, @Component @RestController(Controller와 ResponseBody결합)
클래스가 웹서비스에서 Controller/Service/Repository 등의 "역할"을 함을 의미하는 주석.
component-scan
에 의해 servlet이 관리하는 bean객체로 등록된다
2. 자동 의존성 주입 어노테이션
1. @Autowired
IOC Container에의해 관리되는 bean객체를 주입받는 어노테이션.
root-context.xml에서 설정한 모든 bean객체와, servlet-context.xml에서 설정한 bean객체. 내장 bean객체등 IOC Container 내부의 다양한 Bean객체를 주입받을 수 있다.
@Autowired private MemberService mService; // 필드방식 의존성 주입 //@Autowired 클래스내에 생성자가 1개뿐이라면 @Autowired어노테이션 생략 가능 public Member(MemberService mService){ // 생성자방식 의존성 주입(권장) this.mService = mService; } @Autowired public void setMemberService(MemberService mService){ // setter방식 의존성 주입 this.mService = mService; }
2. @ Value
프로퍼티에 값을 주입하기 위해 사용하는 어노테이션
3. 기타 어노테이션
@Qualifier @ Inject @Resource (이름기반 자동주입)
3. 빈 등록 및 설정 어노테이션
SpringBoot와 같이 java class기반 스프링 프레임워크 설정시 사용되는 어노테이션들로, 현재 레거시에서는 사용하지 않는다.
1. @Configuration
2. @Bean
3. @ComponentScan
Last updated