有个需要引用bean的工具类
@Componentclass FooUtils implements InitializingBean { private static Foo foo; private static Bar bar; @Autowired private void foo(Foo foo) { MyFactory.foo = foo; } @Override public void afterPropertiesSet() throws Exception { bar = new Bar(foo, ...); } public static MyObj create(int param1, int param2, int param3) { if (foo == null) { thrown new Exception(); } return new MyObj(foo.baz(param1, param2), bar, param3); } }
想用上面那个工具类创建bean
@Configuration@DependsOn('fooUtils') // <-- 然而不work, 开始new实例的时候都还没进行bean的initclass Config { @Bean public MyObj myObjBean() { return FooUtils.create(1, 2, 3); // <-- 想不到怎么让这里在fooUtils完成autowired之后才执行 } }
@Serviceclass MyService { @Autowired private MyObj myObj; }
一只斗牛犬
相关分类