너와 나의 프로그래밍
Spring Framework - Annotation 기반 설정 - 1 본문
[Spring] Annotation 기반 설정 - 1
스프링 컨테이너는 xml로 설정을 하는데 있어 과도한 설정에 부담도 클 뿐더러 가독성도 점차 떨어지는 문제가 발생한다. 프로젝트의 규모가 커지면 커질수록 유지보수에 있어서도 좋지 않다.
그래서 스프링 프레임워크는 어노테이션(Annotation)을 지원한다.
어노테이션은 기본 Java를 공부하면서 많이 사용된다. 예를들어 Junit을 위한 @Test 어노테이션이라든지 아주 흔히 보는 @Override가 대표적인 어노테이션 기법이다.
이 중 스프링 프레임워크에서 자주 쓰이는 어노테이션을 소개하려고 한다.
@Component
@Component("id 또는 name")
@Component 어노테이션은 기존 스프링 컨테이너 설정 파일인 xml 파일에 bean을 추가하여 관리했던 것들을 클래스 선언부 위에 @Component를 선언 해주는 것으로 자동으로 bean 등록이 가능하다.
그 전에 스프링 컨테이너 설정을 위해 만들었던 xml 파일에 context 설정을 하고 <context:component-scan> 설정을 한다.
(xml 설정)
<context:component-scan>의 base-package는 패키지 명으로 설정하되 그 패키지 명의 안에 있는 클래스 파일들이 모두 스캔 대상으로 이루어지며 컴포넌트로 사용할 수 있다.
간단한 @Component 어노테이션의 대한 예제를 살펴보자.
특별한 것은 없지만 클래스 위에 @Component 어노테이션만 주입해주면 xml에 번거롭게 bean을 등록 할 필요가 없어진다.
@Component는 그대로 사용해도 되지만 @Component("id또는 name")을 이용하여 해당 클래스를 커스텀하게 사용할 수도 있다.
이때 @Component를 그냥 사용하게 된다면 규칙에 의해 클래스의 첫 글자를 소문자로 변경하여 자동으로 bean이 주입된다. 예를들어 Kia라면 kia가 되는 것이다.
'Back-End > Spring Framework' 카테고리의 다른 글
Spring Framework - Spring AOP의 개념과 용어 (0) | 2020.07.27 |
---|---|
Spring Framework - Annotation 기반 설정 - 2 (0) | 2020.07.12 |
Spring Framework - 의존성 주입 방식 (0) | 2020.07.08 |
Spring Framework - 스프링 컨테이너(Spring Container) (0) | 2020.07.06 |
Spring Framework - 파일 다운로드 구현 시 다국어(글자) 깨지는 현상 (0) | 2019.01.03 |