빈은 XML 파일에서 <bean /> 태그로 선언하며, 표 3-1에서 설명하는 속성을 포함할 수 있다.
▼ 표 3-1 bean 태그 속성
속성 |
설명 |
id |
빈의 식별자로, 유일한 ID 한 개만 정의할 수 있다. |
class |
구체적인 클래스를 가리키며, 전체 자바 패키지로 지정한다. |
scope |
스프링 컨테이너에 빈을 생성할 방법을 알린다. 기본으로 scope 프로퍼티가 설정되어 있지 않으면 싱글턴 인스턴스가 된다. 다른 스코프(유효 범위)로는 prototype(빈이 필요할 때마다 인스턴스 생성), request(각각의 HTTP 웹 요청에서 단일 인스턴스 생성), session(HTTP 세션이 존재하는 동안 빈 생성, 유지)이 있다. |
init-method |
빈이 생성된 후 호출될 메서드의 이름이다. 객체가 생성된 후 어떤 상태로 설정하려고 할 때 유용하다. |
factory-method |
빈을 생성하는 데 사용될 메서드의 이름이다. 달리 말해, 객체의 인스턴스를 생성할 메서드를 제공해야 하며, 이 메서드는 파라미터를 받아야 한다. |
destroy-method |
빈을 사용 완료한 후에 호출될 메서드의 이름이다. |
lazy-init |
여러분 또는 나중에 여러분의 객체를 요구하는 다른 인스턴스 클래스가 빈을 호출하거나 사용할 때(getBean 메서드를 호출할 때) 컨테이너가 해당 빈을 생성하도록 하고 싶은 경우에 true로 설정할 수 있다. |
스프링 프레임워크는 클래스와 그 의존성에 관한 정보를 추가하고 이들이 상호 작용하는 여러 가지 방법을 제공한다. 이 책을 진행하면서 예제 스프링 애플리케이션인 My Documents에 몇 가지 기능을 추가하며 이러한 내용을 다룰 것이다.