Spring注入方式

来源:互联网 发布:收淘宝店铺拿去干嘛 编辑:程序博客网 时间:2024/06/07 10:35
静态工厂方法
其实就是写一个类,里面有 静态成员属性、静态代码块、静态方法
静态属性是要返回的值、
静态代码块给静态属性赋值
静态方法返回静态成员属性
/*成员变量位置是要new的*/
实例工厂方法
实例工厂和静态工厂的区别是:
使用静态工厂每次得到一个对象,对象的值和地址都是一样的
使用实例工厂每次得到一个对象,值有可能不一样,但地址肯定不一样
实例工厂创建方法
创建一个成员变属性、构造方法、和get方法,这些都不是静态的
成员变量是要返回的值,这里的值要为null
构造方法里面实例化成员变量,并且给他赋值

构造器注入
构造器注入也叫构造方法注入
这种方法的思想就是在配置文件或注释的时候就给类的成员属性赋值
然后用application获取bean工厂,用工厂获取bean
通过工厂获取到的bean的成员属性的值就是在配置文件或者注释里面配置的值
但是要注意,这个底层是通过构造方法来执行的,所以在注入了哪几个成员属性就要有相对应的构造方法
<bean id="person" class="com.factory.demo1.Person">
<constructor-arg index="0" value="张飞天"></constructor-arg>
<constructor-arg index="1" value="50"></constructor-arg>
</bean>
比如这样配置person里面就要有一个传入两个参数的构造函数(如果person的第二个属性是数值类型会把字符转换成数值类型,如果是字符串就是字符串)
<bean id="person" class="com.factory.demo1.Person">
<constructor-arg index="0" value="张飞天"></constructor-arg>
</bean>
如果这样配就要有一个传入一个String类型的构造函数
如果是基本类型、String类型用、基本类型的包装类用value,如果是其他引用类型用ref(数组和集合有其他方法,用到再百度、、一般用不到)


属性注入
属性注入也叫set方法注入
这种方法的思想就是在配置文件或注释的时候就给类的成员属性赋值
然后用application获取bean工厂,用工厂获取bean
通过工厂获取到的bean的成员属性的值就是在配置文件或者注释里面配置的值
但是要注意,这个底层是通过set方法来执行的,所以在注入了哪个成员属性就要有相对应的set方法
<bean id="person" class="com.factory.demo1.Person">
<property name="age" value="18"></property>
</bean>
比如这样写,person里面就要有一个 setAge() 方法
原创粉丝点击