lookup方法注入
当singleton类型的bean引用prototype类型的bean时候,就会有问题
在这里假设A为singleton类型的bean B为prototype类型的bean A需要引用B
lookup方法注入利用了 ioc 容器复写bean的抽象方法的能力 从而返回指定名字的bean实例 原理是通过CGLIB库运行生成二进制代码。
在使用lookup方法注入时,需要在引用bean中定义一个抽象地返回被引用对象的方法
public abstract CurrentTime createCurrentTime();
在进行XML配置的时候,需要使用<lookup-method>来指定所要覆盖的方法和返回的bean
当singleton类型的bean引用prototype类型的bean时候,就会有问题
在这里假设A为singleton类型的bean B为prototype类型的bean A需要引用B
lookup方法注入利用了 ioc 容器复写bean的抽象方法的能力 从而返回指定名字的bean实例 原理是通过CGLIB库运行生成二进制代码。
在使用lookup方法注入时,需要在引用bean中定义一个抽象地返回被引用对象的方法
public abstract CurrentTime createCurrentTime();
在进行XML配置的时候,需要使用<lookup-method>来指定所要覆盖的方法和返回的bean
<lookup-method name="createCurrentTime" bean="currentTime"/>