java-执行时的@Autowired方法
作者:互联网
我有一个BaseDaoImpl类,它具有以下方法:
@Autowired
public void initSessionFactory(@Qualifier("sqlSessionFactory") SqlSessionFactory sqlSessionFactory) {
super.setSqlSessionFactory(sqlSessionFactory);
System.out.println("------ ok ------");
}
我定义了一个子类UserDaoImpl,它实现了BaseDaoImpl.并将其定义为bean.
在初始化Spring上下文时,我发现initSessionFactory()方法是自动执行的,但是我没有调用任何方法.
据我了解,该方法是执行&仅当我调用它的参数时才自动为其连线,有人可以帮助解释它的工作原理吗?谢谢.
解决方法:
那是正常现象.用@Autowired注释的initSessionFactory方法被认为是配置方法. @Autowired可以放在构造函数,字段和方法上.创建bean时,首先调用构造函数,然后注入字段,然后调用config方法.
配置方法的参数(用@Autowired注释)将与Spring容器中的匹配bean自动连接.
有关更多详细信息,请参见Javadoc API for Autowired annotation.
标签:autowired,spring,java,inversion-of-control 来源: https://codeday.me/bug/20191029/1959285.html