为什么我的setApplicationContext方法在初始化的时候没有被调用啊?

来源:3-3 Spring Bean装配之Aware接口

Cle_de_Peau_Beaute

2016-07-15 22:07

public class TestImp implements ApplicationContextAware{


public void init(){

System.out.println("-----init-----");

}


@Override

public void setApplicationContext(ApplicationContext arg0)

throws BeansException {

System.out.println("ssss");

}

}

配置肯定是对的 可以执行初始化的方法 也成功获得了bean的对象 就是不执行setApplicationContext方法  help~~


写回答 关注

4回答

  • 蓝黑Frizen
    2017-08-30 23:55:10

    我也碰到了这个问题

    用DefaultListableBeanFactory实现的容器实例化对象时不会调用ApplicationContextAware方法

    改用ClassPathXmlApplicationContext实现的容器则没问题。

    不知道为何Spring提供两种容器的实现类,功能看起来差不多。

    Needso...

    我用的springboot,也出现了调用这个问题,你知道怎么解决么,全部用的注解

    2017-11-20 17:39:20

    共 1 条回复 >

  • IT界小嫩草一枚
    2016-12-01 23:00:05

    看log

  • withyou王杰
    2016-08-28 23:27:45

    看你检查一下你bean的class的地址是否正确,和方法里调用的ID是否正确

    如果正确不会有错

  • 萌萌哒猫头鹰
    2016-07-17 22:33:19

    如果bean被正常初始化一定会执行setApplicationContext的方法。

    给的信息太少了,也没看到其余的类和xml是怎么写的。

Spring入门篇

为您带来IOC和AOP的基本概念及用法,为后续高级课程学习打下基础

268786 学习 · 963 问题

查看课程

相似问题