Loading...
Spring Framework Reference Documentation 7.0.2의 Using depends-on의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
depends-on어떤 bean이 다른 bean의 의존성인 경우, 이는 보통 한 bean이 다른 bean의 프로퍼티로 설정되어 있다는 것을 의미합니다. 일반적으로 XML 기반 메타데이터에서 <ref/> element를 사용하거나 autowiring을 통해 이를 수행합니다.
그러나 때때로 bean들 사이의 의존성은 덜 직접적일 수 있습니다. 예를 들어, database driver registration과 같이 class의 static initializer가 트리거되어야 하는 경우가 있습니다. depends-on attribute 또는 @DependsOn 어노테이션은 이 element를 사용하는 bean이 초기화되기 전에 하나 이상의 bean이 명시적으로 먼저 초기화되도록 강제할 수 있습니다.
다음 예제는 단일 bean에 대한 의존성을 표현하기 위해 depends-on attribute를 사용하는 방법을 보여줍니다:
1<bean id="beanOne" class="ExampleBean" depends-on="manager"/> 2<bean id="manager" class="ManagerBean" />
여러 bean에 대한 의존성을 표현하려면, depends-on attribute의 값으로 bean name 목록을 제공하면 됩니다(쉼표, 공백, 세미콜론은 유효한 구분자입니다):
1<bean id="beanOne" class="ExampleBean" depends-on="manager,accountDao"> 2 <property name="manager" ref="manager" /> 3</bean> 4 5<bean id="manager" class="ManagerBean" /> 6<bean id="accountDao" class="x.y.jdbc.JdbcAccountDao" />
depends-onattribute는 initialization-time 의존성과, singleton<br>bean의 경우에만 해당되는 destruction-time 의존성 모두를 지정할 수 있습니다. 특정 bean과<br>depends-onrelationship을 정의하는 dependent bean들은 해당 bean 자체가 destroy되기 전에 먼저<br>destroy됩니다. 따라서depends-on은 shutdown 순서를 제어할 수도 있습니다.
Dependencies and Configuration in Detail
Lazy-initialized Beans