问答详情
源自:4-6 Spring Bean装配之基于Java的容器注解说明——@ImportResource和@Value

为什么在类中定义几个@Bean注解,同时指定initMethod和destroyMethod时,在测试时会带有其他Bean的初始和销毁方法

@Configuration

@ImportResource("classpath:spring-beanannotation.xml")

public class StoreConfig {

@Value(value="${jdbc.url}")

private String url;

@Value(value="${jdbc.username}")

private String username;

@Value(value="${jdbc.password}")

private String password;

@Bean(name="sugerStore")

public Store getSugerStore(){

return new SugerStore();

}

@Bean(name="robotStore",initMethod="init",destroyMethod="destory")

public Store getRobotStore(){

return new RobotStore();

}

@Bean(name="driverStore")

public Store getDriverStore(){

return new DriverStore(url, username, password);

}

}


提问者:一抹斜阳 2016-10-16 13:30

个回答

  • leaf0seeyou
    2016-10-16 17:37:47

    有指定initMethod和destroyMethod时,再带有其他的初始化方法时,默认的不会生效。可能xml中配置了全局的方法了。