Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring是否用java配置中的现有bean替换方法调用?_Java_Spring_Spring Java Config - Fatal编程技术网

Spring是否用java配置中的现有bean替换方法调用?

Spring是否用java配置中的现有bean替换方法调用?,java,spring,spring-java-config,Java,Spring,Spring Java Config,方法loadView只调用一次(在创建mainViewbean时)对吗 默认情况下,所有SpringBean都是单例的。因此,如果您不在@配置中,那么您的答案就是是 注意:在您的情况下,如果您在创建其他bean时多次调用getMainView,而这在@Configuration中发生,它将被调用多次,但仅在创建时调用 此外,我建议你阅读 事实上没有@Configuration是特殊的bean,经过特殊处理。因此,虽然该方法显然被多次调用,但返回的是同一个bean实例。配置类实际上由cglib代理

方法
loadView
只调用一次(在创建
mainView
bean时)对吗


默认情况下,所有SpringBean都是单例的。因此,如果您不在
@配置中
,那么您的答案就是

注意:在您的情况下,如果您在创建其他bean时多次调用
getMainView
,而这在
@Configuration
中发生,它将被调用多次,但仅在创建时调用


此外,我建议你阅读

事实上没有
@Configuration
是特殊的bean,经过特殊处理。因此,虽然该方法显然被多次调用,但返回的是同一个bean实例。配置类实际上由cglib代理/扩展,并使用asm在进行解析。感谢您的澄清,不过我在回答中已经指出了这一点@M.Deinum我在其中添加了一个警告关键字,以使其更具可读性
@Configuration
public class Config {

    @Bean(name = "mainView")
    public View getMainView() throws IOException {
        return loadView("fxml/main.fxml");
    }

    @Bean
    public MainController getMainController() throws IOException {
        return (MainController) getMainView().getController();
    }

    @Bean
    public Step1Controller getStep1Controller() throws IOException {
        return getMainController().getStep1Controller();
    }

   ...
}