@SpringBootApplication的使用

以前用戶使用的是3個註解註解他們的main類。分別是@Configuration,@EnableAutoConfiguration,@ComponentScan。因爲這些註解通常都是一塊兒使用,spring boot提供了一個統一的註解@SpringBootApplication。java

@SpringBootApplication = (默認屬性)@Configuration + @EnableAutoConfiguration + @ComponentScan。spring

@SpringBootApplication  
public class ApplicationMain {  
    public static void main(String[] args) {  
        SpringApplication.run(Application.class, args);  
    }  
} 

 

分開解釋@Configuration,@EnableAutoConfiguration,@ComponentScan。xml

一、@Configuration:提到@Configuration就要提到他的搭檔@Bean。使用這兩個註解就能夠建立一個簡單的spring配置類,能夠用來替代相應的xml配置文件。對象

    <beans>  
        <bean id = "car" class="com.test.Car">  
            <property name="wheel" ref = "wheel"></property>  
        </bean>  
        <bean id = "wheel" class="com.test.Wheel"></bean>  
    </beans>  

 至關於:blog

@Configuration  
public class Conf {  
    @Bean  
    public Car car() {  
        Car car = new Car();  
        car.setWheel(wheel());  
        return car;  
    }  
    @Bean   
    public Wheel wheel() {  
        return new Wheel();  
    }  
} 

 

@Configuration的註解類標識這個類能夠使用Spring IoC容器做爲bean定義的來源。@Bean註解告訴Spring,一個帶有@Bean的註解方法將返回一個對象,該對象應該被註冊爲在Spring應用程序上下文中的bean。it

二、@EnableAutoConfiguration:可以自動配置spring的上下文,試圖猜想和配置你想要的bean類,一般會自動根據你的類路徑和你的bean定義自動配置。io

三、@ComponentScan:會自動掃描指定包下的所有標有@Component的類,並註冊成bean,固然包括@Component下的子註解@Service,@Repository,@Controller。class

相關文章
相關標籤/搜索