我目前有以下 Spring bean 定义:
<bean id="myAwesomeBeanSetup" class="com.beanpckg.SuperBean" scope="singleton" init-method="doPreStep"/>
<bean id="myAwesomeBean" class="com.beanpckg.SuperBean" scope="prototype" depends-on="myAwesomeBeanSetup"/>
本质上,我需要的是只运行一次 SuperBean.doPreStep ,但仍有一个新的 SuperBean 实例用于后续调用。由于我有很多具有这种结构的 bean,我想知道是否有更优雅的方法来实现这一点而无需两行定义?请注意,也可能存在“跨 bean”依赖关系,例如:
<bean id="myAwesomeBeanSetup" class="com.beanpckg.SuperBean" scope="singleton" init-method="doPreStep"/>
<bean id="myAwesomeBean2Setup" class="com.beanpckg.SuperBean2" scope="singleton" init-method="doPreStep"/>
<bean id="myAwesomeBean" class="com.beanpckg.SuperBean" scope="prototype" depends-on="myAwesomeBeanSetup,myAwesomeBean2Setup"/>