Spring - @DependsOn
- @DependsOn 是 Spring 框架中的一个注解,用于指定一个 bean 的依赖关系。当 Spring 容器初始化 bean 时,它会按照一定的顺序进行初始化。如果一个 bean 依赖于其他 bean,那么这个 bean 的初始化应该在依赖的 bean 之后进行。
- @DependsOn 注解可以用于指定一个 bean 依赖于哪些 bean,这样 Spring 容器在初始化 bean 时,会先初始化依赖的 bean,然后再初始化当前 bean。
@Component
@DependsOn("b")
public class A implements C{
public A() {
System.out.println("A");
}
}
@Component
public class B implements C{
public B() {
System.out.println("B");
}
}
public interface C {
}
@Service
public class ServiceTest {
@Autowired
List<C> i;
public void test() {
System.out.println(i);
}
}
输出:
B
A
[com.example.demo.A@27494e46, com.example.demo.B@d59970a]