02spring_IoC

什么是IoC?
控制反转

控制反转(Inversion of Control,英文缩写为IoC)是框架的重要特征,并非面向对象编程的专用术语。
它与依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)并没有关系。

DI 依赖注入


构造方法注入

<bean id="sdf" class="java.text.SimpleDateFormat">
<constructor-arg>
<value>yyyy年MM月dd日 hh时mm分ss秒</value>
</constructor-arg>
</bean>


<bean name="mysql" class="com.fz.entity.Book">
<constructor-arg name="id" value="100"/>
<constructor-arg name="name" value="《mysql数据库技术》"/>
</bean>


setter方法注入
bean类编写
package com.fz;
import lombok.Data;
/**
* Created by webrx on 2017-07-01.
*/
@Data
public class Hello {
private String name;
public int pf(int i){
return i*i;
}

public void show(){
System.out.println("欢迎:" + this.name);
}
}

beans.xml 配置文件中配置如下
<bean id="hz" class="com.fz.Hello">
<property name="name" value="张三丰" />
</bean>

<bean id="hl" class="com.fz.Hello">
<property name="name" value="lisisi" />
</bean>

 

集合注入相关
构造方法数组注入
<bean id="s1" class="com.entity.Student">
<constructor-arg name="id" value="1"/>
<constructor-arg name="name" value="李四"/>
<constructor-arg name="address" value="郑州市"/>

<constructor-arg name="addr">
<array>
<value>北京</value>
<value>天津</value>
<value>上海</value>
<value>重庆</value>
</array>
</constructor-arg>
</bean>


List集合
private List<Book> bks;
<property name="bks">
<list>
<ref bean="mysql"/>
<ref bean="/a/book"/>
<ref bean="/book/mysql"/>
</list>
</property>

<bean id="book" class="com.entity.Book">
<property name="author">
<list>
<value>张三</value>
<value>张三丰</value>
<value>李四</value>
</list>
</property>
</bean>

数组
private String[] addr;
<property name="addr">
<array>
<value>洛阳</value>
<value>郑州</value>
<value>北京</value>
<value>上海</value>
<value>开封</value>
</array>
</property>

map集合
<bean name="d1" class="java.util.Date"></bean>
<bean name="d2" class="java.util.Date"></bean>

<bean id="book" class="com.entity.Book">
<property name="ds">
<map>
<entry key="d1" value-ref="d1"/>
<entry key="d2" value-ref="d2"/>
</map>
</property>

<property name="map">
<map>
<entry key="s1" value="李四"/>
<entry key="s2" value="李四"/>
<entry key="s3" value="李四"/>
<entry key="s3" value="李四"/>
</map>
</property>

<property name="author">
<list>
<value>张三</value>
<value>张三丰</value>
<value>李四</value>
</list>
</property>
</bean>

set 集合
<property name="set">
<set>
<value>aaaa</value>
<value>bbbb</value>
<value>cccc</value>
<value>dddd</value>
</set>
</property>

Properties 集合
<property name="pro">
<props>
<prop key="k1">aaa1</prop>
<prop key="k2">bbb2</prop>
<prop key="k3">ccc3</prop>
<prop key="k3">ddd4</prop>
</props>
</property>

posted @ 2017-07-18 16:32  归然  阅读(108)  评论(0编辑  收藏  举报