spring的一个核心思想【 IOC 控制反转】就是应用本身不负责对象的创建和维护,对象和依赖对象的创建完全交给spring的容器去管理和维护,把这个权利反转给容器。这里就不再多赘述,关注的是反转之后,咱们如何管理和维护对象。本文讨论的是创建的3种方式
使用构造器创建
使用构造器方式创建,要求bean必须要有默认的构造器
那么由spring容器来创建User类的一个user对象的使用构造器创建的方式如上:id即是对象引用名称、class是对象所属类的全路径。实际上是通过反射帮创建
静态工厂方式创建
需要提供静态工厂
再看配置:
此时:id仍然是对象引用名,class则是创建该对象的静态工厂类的全名,factory-method是产生该对象的静态工厂的方法名
实例工厂方式
需要提供实例工厂
配置:
先通过<bean>定义实例工厂,然后另外创建实例对象的bean中:factory-bean就是此前定义的实例工厂的bean,然后指定factory-method就是指定实例工厂的创建该对象的方法
小结:开发中最常用的是通过构造器创建,所以类中必须存在一个无参构造方法
spring的再次回顾总结,若有详述不当之处,感谢您私信纠正。