Spring零配置之@Configuration注解詳解


@Configuration介紹

Spring3.0之前要使用Spring必須要有一個xml配置文件,這也是Spring的核心文件,而Spring3.0之后可以不要配置文件了,通過注解@Configuration完全搞定。

@Configuration即用來代替Spring配置文件的,它就是一個@Component組件,接收一個value值也就是bean的名字,value可以不填。

@Configuration使用

下面是一個使用實例,創建了一個userService和accountService的實例,accountService實例引用userService實例。

@Configuration
@ComponentScan(basePackages = { "com.test.web" })
@Import(UserConfg.class)
@ImportResource(locations = {"classpath:config/spring-beans.xml"})
public class MainConfg {

@Bean(name = "userService", initMethod = "init", destroyMethod = "destroy")
@Scope("singleton")
public UserService userService() {

    return new UserService();

    }

    @Bean
    public AccountService accountService(UserService userService) {
        AccountService as = new AccountService();
        as.setUserService(userService);
        return as;
    }

}

注解說明

@Configuration:代表這個類是一個配置類。

@ComponentScan:用來掃描指定包下面的注解類。

@Import:用來導入其他的@Configuration配置類。

@ImportResource:用來導入xml配置文件,比如某些配置一定要xml配置。

@Bean:用來定義一個bean,可以指定初始、銷毀方法,及bean范圍等。

這些注解都在spring-context包下,還有其他注解用來解放xml形式的配置,大量xml配置可java配置化,只要定義好,Spring會自動掃描包下面的@Configuration注解的配置文件類來裝配。

關注公眾號Java技術棧回復"面試"獲取我整理的2020最全面試題及答案。

推薦去我的博客閱讀更多:

1.Java JVM、集合、多線程、新特性系列教程

2.Spring MVC、Spring Boot、Spring Cloud 系列教程

3.Maven、Git、Eclipse、Intellij IDEA 系列工具教程

4.Java、后端、架構、阿里巴巴等大廠最新面試題

覺得不錯,別忘了點贊+轉發哦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM