InitializingBean

Spring的InitializingBean为bean提供了定义初始化方法的试。它是一个接口,仅仅包含一个方法:afterPropertiesSet()。在Spring初始化后,执行完所有属性设置方法(即setXxx)将自动调用afterPropertiesSet()。在配置文件中无须特别的配置。

一旦bean实现了InitializingBean接口,那么这个bean的代码就和Spring耦合到一起了,通常情况下还可以使用Spring提供的init-method的功能来执行一个定义的初始化方法。

 

package research.spring.beanfactory.ch4;
public class LifeCycleBean{
public void init(){
System.out.println("LifeCycleBean.init...");
}
}


在Spring中配置这个Bean:

 

 

xml version="1.0" encoding="UTF-8"?>DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN""http://www.springframework.org/dtd/spring-beans.dtd"><beans><bean name="lifeBean" class="research.spring.beanfactory.ch4.LifeCycleBean"
 init-method="init">bean>beans>


Spring要求init-method是一个无参数的方法,init-method指定的方法可以是public、protected以及private的,并且方法也可以是final的。

 

 

当InitializingBean和init-method可以一起使用,Spring会先处理InitializingBean再处理init-method。init-method是通过反射执行的,而afterPropertiesSet是直接执行的。所以afterPropertiesSet的执行效率比init-method要高,不过init-method消除了bean对Spring的依赖。

 

最后欢迎大家访问我的个人网站:1024s

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值