Spring 中的条件 bean 注册

使用条件时要注意的重点

  • 条件类被称为直接类(而不是 spring bean),因此它不能使用 @Value 属性注入,即不能在其中注入其他 spring bean。
  • 来自 java docs - 条件必须遵循与 BeanFactoryPostProcessor 相同的限制,并注意永远不要与 bean 实例交互。这里引用的限制是 A BeanFactoryPostProcessor 可以与 bean 定义交互并修改 bean 定义,但绝不是 bean 实例。这样做可能会导致 bean 过早实例化,违反容器并导致意外的副作用。