我是 spring 和注释的新手。我在调试模式下启动应用程序,我发现当我的代码到达 Actuator 的 init() 方法时,以下值已分配给 actVar1 和 actVar2。
actVar1 具有“abc”值
actVar2 具有“xyz”值
注意:我的应用程序还没有完全启动。我只是出于不同的目的尝试在 init() 方法中使用调试点,并且我观察到了上述情况。
我的问题是为什么这些变量分配了这些值。
//Actuator.java
@Component
public class Actuator {
private String actVar1;
private String actVar2;
//.. some code here
@PostConstruct
public void init(){
//my debug point is here
//some code .....
}
//.. some code here
}
//Beancreator.java
@Component
public class BeanCreator {
//.. some code here
private String first="abc";
private field2 second ="xyz";
//.. some code here
@Bean
public Actuator actuator() {
Actuator actuator = new Actuator();
actuator.setActVar1(first);
actuator.setActVar2(second);
return actuatorPoller;
}
//.. some code here
}
当我将 @Bean 下的方法名称更改为不同的方法名称时,这些值不会被分配。
www说
神不在的星期二
相关分类