上一篇中简单的实现了一下Spring容器实例化对象.是通过构造器的方式.其实还有别的方式实例化对象,但是通过(默认)构造器是最常用的一种
Spring容器实例化对象的3中方法
1、默认构造器
上一篇中,我们虽然自己写了一个无参构造器,其实只是为了更好的观察Spring容器实例化对象。其实不用写无参构造器,用默认构造器也能实例化对象,而且是我们最常用的方式。通过默认构造器实例化对象的要求就是id属性是唯一的,class属性指定类的全限定名(包名+类名);
2、静态工厂方法(了解)
通过要实例化的类中的静态方法返回一个对象。
如果要实例化Calendar类,我们需要借助类中的一个静态方法,可以得到Calendar的实例。因为Calendar是日历,需要设计为单例模式。
这时Spring容器无法通过构造器的方式new一个Calendar的实例,所以需要用到静态工厂方法来获得Calendar的对象。
factory-method属性的值来指定静态方法即可。
3、对象工厂方法(了解)
如果实例化的类是Spring容器中的bean元素,而且需要类中的静态方法来实例化对象,就可以用对象工厂方法.
其中factory-bean为一个bean元素的id.factory-method为静态方法.