Skip to content

Latest commit

 

History

History
44 lines (33 loc) · 1.78 KB

File metadata and controls

44 lines (33 loc) · 1.78 KB

Конфигурация Spring приложения. Аннотации + Java код

AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);

Аннотация @Configuration

Помечает Java класс, который мы хотим использовать для конфигурации Spring приложения.

@Configuration
public class SpringConfig{
}

Пустой конфигурационный Java класс равен по фунционалу пустому конфигурационному XML файлу

XML теги и соответствующие аннотации

XML Аннотация
<context:component-scan base-package="директория с компонентами"/> @ComponentScan("директория с компонентами")
<bean/> @Bean
<context:property-placeholder location="classpath:файл.properties"/> @PropertySource("classpath:файл.properties")

Ручное внедрение зависимостей

@Configuration
public class SpringConfig {
    
    @Bean
    @Scope("singleton")
    public ClassicalMusic musicBean() { // beanId = musicBean 
        return new ClassicalMusic();
    }
    
    @Bean
    public MusicPlayer musicPlayer() { // beanId = musicPlayer 
        return new MusicPlayer(musicBean()); // Внедрение созданного бина
    }
}