Skip to content

Latest commit

 

History

History
48 lines (35 loc) · 1.52 KB

Config_annotation+JavaCode.md

File metadata and controls

48 lines (35 loc) · 1.52 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()); // Внедрение созданного бина
    }
}

Вернуться назад