关于Spring中 @PostConstruct 没有生效的问题

近期刚刚学习Spring, 实验是在java开发环境中引入spring jar等方式进行的。

在学习bean 生命周期的过程, bean的生命周期步骤中有一个初始化相关的:

其中指定了两种初始化方式:

1: xml中<bean>标签中配置 init-method, 并在对应的bean中实现该初始化方法

2: 通过在java bean上给初始化方法添加@PostConstruct, 则spring在加载bean过程中会解析该注解,并执行该初始化方法.

@PostConstruct //指定该方法在对象被创建后马上调用 相当于配置文件中的init-method属性
    public void init(){
        System.out.println("我是初始化方法!");
    }

但是我在具体测试代码中通过第二种方法配置初始化方法,对应的日志没有执行.

解决: 在xml中添加 <context:annotation-config /> ,这会启动注解.

 

注: ClassPathXmlApplicationContext方式装载bean, 则@PostConstruct这种初始化方式可以生效;

BeanFactory方式装载bean, 我个人发现@PostConstruct这种初始化方式并没有生效。 不知各位是否有不同见解 ?

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值