Spring应用之DI

一、依赖注入(DI):分自动和手动两种方式:下面来介绍下手动的方式

1.通过set方法注入:bean中提供属性的set方法,并在applicationContext.xml中配置,通过

<property  name=””  ref=”” | value=”” >

2.通过构造器:通过构造方法带参数的方式注入,在applicationContext.xml中注入的方法为<constructor-arg  index=””(下标由0开始)          ref=”” | value=””/>

也可以通过类型类注入:<constructor-arg  type=””  value=””/>

3.通过注解的方式注入:@Autowired  @Resource注解:

     @Autowiredspring的注解;@Resource jdk1.5之后提供的

    @Autowired默认是通过Class来找;@Resource通过name查找,如果没找到再通过class类型查找

    使用注解注入则无需在spplicationContext.xml中进行配置

   

    二、bean的延迟加载,有两种配置方式:

     局部配置:在<bean>中添加lazy-init="default"

    全局配置:在<beans>中添加default-lazy-init="false"

 三、实例化bean的三种方法:

1.使用构造器来实例化:所以默认要提供不带参数的构造器

2.使用静态工厂方法实例化:

<bean id="personService" class="cn.service.OrderFactory" factory-method="createOrder"/>
public class OrderFactory {
public static OrderServiceBean createOrder(){
	return new OrderServiceBean();
		}
}

 3.使用实例化工厂方法实例化:

    <bean id="personServiceFactory" class="cn.itcast.service.OrderFactory"/>
<bean id="personService"  factory-bean="personServiceFactory"  factory-method="createOrder"/>

 第2、3种方法不常用

 

 

    

 

 

 

 

 

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自logking2340.iteye.com/blog/2162730
今日推荐