确定创建bean的聚合

时间:2013-03-15 09:47:29

标签: java spring javabeans

我有以下定义:

<bean id="logger" factory-method="createLog" scope="prototype" class="com.test.beans.LogBean" ></bean>

<bean id="aone" class="com.test.beans.AggregationOne">
    <property name="log" ref="logger"></property>
</bean>

<bean id="atwo" class="com.test.beans.AggregationTwo">
    <property name="log" ref="logger"></property>
</bean>

是否可以识别正在创建哪个对象(aone或atwo)bean'logger'?

为什么我要问:在遗留应用程序中,我为所有类都有一个日志实例。我想更改某些包的级别,但不能这样做(除了使用过滤器,我不想要的)。为了这个目的,我想利用一些弹簧魔法,如果它适用于那种情况)

1 个答案:

答案 0 :(得分:0)

我认为不能这样做。您可以尝试的是BeanPostProcessor实现,它可以检测bean中的常见记录器对象并将其替换为特定的记录器对象。