我需要从rubberStampService类内部调用RubberStampServiceImpl的公共方法。

要从内部引用rubberStampService,我可以做一个如下所示的自引用bean声明:

<beans:bean id="rubberStampService" class="com.rubberly.RubberStampServiceImpl">
    <beans:property name="rubberStampService" ref="rubberStampService" />
</beans:bean>

最佳答案

听起来像是无限递归,内存不足错误等待发生。为什么不只让服务调用它自己的方法并完成它呢?您不需要新的引用,只需“this”。

public interface FooService()
{
    void foo();
    void bar();
}

public class FooServiceImpl implements FooService
{
    public void foo() { System.out.println("calling foo"); }
    public void bar()
    {
        this.foo(); // just call your own method.
    }
}

08-04 21:49