一、Spring循环依赖

面试题:
1、你解释下spring中的三级缓存?

2、三级缓存分别是什么?三个Map有什么异同?

3、什么是循环依赖?请你谈谈?看过spring源码吗?一般我们说的spring容器是什么?

4、如何检测是否存在循环依赖?实际开发中见过循环依赖的异常吗?

5、多例的情况下,循环依赖问题为什么无法解决?

1、什么是循环依赖?

        1、多个bean之间相互依赖,形成了一个闭环。

        比如:A依赖于B、B依赖于C、C依赖于A

public class T1 {

	class A {
		B b;
	}

	class B {
		C c;
	}

	class C {
		A a;
	}
}

        2、通常来说,如果问spring容器内部如何解决循环依赖,一定是指默认的单例Bean中属性互相引用的场景。

@Component
public class A {
	@Autowired
	private B b;
}

@Component
public class B {
	@Autowired
	private C c;
}

@Component
public class C {
	@Autowired
	private A a;
}

Spring Aop

一个程序员最重要的能力是:写出高质量的代码!!
有道无术,术尚可求也,有术无道,止于术。
无论你是年轻还是年长,所有程序员都需要记住:时刻努力学习新技术,否则就会被时代抛弃!

10-11 09:23