spring中的scope="prototype"和scope="singleton"
1,scope="singleton"
这里指的是在创建该bean(组件)时 ,只会创建一次其他都为该对象的引用(即 A a = new A ,其余的都是 A c = a ;)
代码如下: 在Demo和Student两个类中都引用了school这个类 该bean的scope="singleton" ,并在两个引用school的类中的toString方法中分别添加了:输出hashcode值!

Demo中的toString:

Student中的toString:

测试代码:

控制台输出:

发现两个hashcode值一样,也印证了(即 A a = new A ,其余的都是 A c = a ;)的猜想!
2,将scope="prototype"
控制台输出如下:

发现两个hashcode值不一样,根据上面也就可以理解为(即 A a = new A , A c = new A ;)
**结尾**:大家多加油,未来可期!有错误还望指正!!

浙公网安备 33010602011771号