第一种是构造器实例化
是指通过该类中默认的无参构造方法来给bean赋值
创建一个Man类,里面什么都不用写
在applicationContext.xml中写想要用Man值实例化的bean
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="Man" class="com.mao.ioc.Man" />
</beans>
构造器实例化成功
第二种为静态工厂方式实例化
创建一个静态工厂类,里面创建一个返回Man对象的方法。
applicationContext.xml代码如下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 我想用静态工厂类里的createManBean()
方法来给我的bean JTMan赋值,class位置是静态工厂,
调用工厂里的createManBean方法最终返回一个Man对象给我的JTMan-->
<bean id="JTMan" class="com.mao.ioc.JTfactory"
factory-method="createManBean"/>
</beans>
用静态工厂方法也成功得到了Man对象
第三种是实例化工厂实例化
创建一个实例化工厂类
applicationContext.xml代码如下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="SLFactory" class="com.mao.ioc.SLFactory" />
<!-- 用factory-bean调用已经实例化的实例化工厂的bean SLFactory,
然后用factory-method去调用工厂里的方法createManbean(),
最后返回Man对象给当前bean Man进行实例化 -->
<bean id="Man" factory-bean="SLFactory"
factory-method="createManbean"/>
</beans>
自此已经完成了三种实例化方法,
别急,学得越多,懂得越多