@SpringBootApplication的使用

原创 2016年08月29日 17:11:18

之前用户使用的是3个注解注解他们的main类。分别是@Configuration,@EnableAutoConfiguration,@ComponentScan。由于这些注解一般都是一起使用,spring boot提供了一个统一的注解@SpringBootApplication。

@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan。

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


分开解释@Configuration,@EnableAutoConfiguration,@ComponentScan。

1、@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>

相当于:

@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。

2、@EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。

3、@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。




版权声明:本文为博主原创文章,未经博主允许不得转载。

Springboot系列:@SpringBootApplication注解

在使用 Springboot 框架进行开发的时候,通常我们会在 main 函数上添加 @SpringBootApplication 注解,今天为大家解析一下 @SpringBootApplicatio...
  • claram
  • claram
  • 2017年07月14日 16:57
  • 6737

使用@SpringBootApplication注解

18. 使用@SpringBootApplication注解 很多Spring Boot开发者经常使用@Configuration,@EnableAutoConfiguration,@Componen...
  • andrewDengpf
  • andrewDengpf
  • 2017年01月06日 11:14
  • 2743

第二十三章 SpringBoot @SpringBootApplication注解源码解析

@SpringBootApplication是SpringBoot的核心注解,它是一个组合注解,源码如下@Target(ElementType.TYPE) @Retention(RetentionPo...
  • gongm24
  • gongm24
  • 2017年02月23日 15:22
  • 341

(14)spring boot中@SpringBootApplication注解

spring boot中使用@SpringBootApplication指定类为应用启动类, 自动扫描于当前类同级以及子包下的相应注解注册为spring beans, 在类中main方法中通过...
  • yhl_jxy
  • yhl_jxy
  • 2017年05月21日 16:45
  • 2090

spring boot实战(第九篇)Application创建源码分析

前言 通过前面的文章了解到在spring boot的启动时,利用的是编写的Application类,使用了注解@SpringBootApplication,本篇将阐述该Bean的加载过程。 @Spri...
  • liaokailin
  • liaokailin
  • 2015年10月11日 15:52
  • 6559

Spring注解之:@SpringBootApplication

@SpringBootApplication is a convenience annotation that adds all of the following: @Configurati...
  • zhouhuakang
  • zhouhuakang
  • 2016年02月07日 18:27
  • 1426

spring boot应用启动原理分析

spring boot quick start在spring boot里,很吸引人的一个特性是可以直接把应用打包成为一个jar/war,然后这个jar/war是可以直接启动的,不需要另外配置一个Web...
  • hengyunabc
  • hengyunabc
  • 2015年11月30日 22:36
  • 125197

Spring Boot的SpringApplication类详解

相信使用过Spring Boot的开发人员,都对Spring Boot的核心模块中提供的SpringApplication类不陌生。SpringApplication类的run()方法往往在Sprin...
  • taiyangdao
  • taiyangdao
  • 2017年08月13日 21:18
  • 1077

spring boot 使用@ConfigurationProperties

有时候有这样子的情景,我们想把配置文件的信息,读取并自动封装成实体类,这样子,我们在代码里面使用就轻松方便多了,这时候,我们就可以使用@ConfigurationProperties,它可以把同类的配...
  • yingxiake
  • yingxiake
  • 2016年04月27日 17:43
  • 37814

Spring中基于Java的配置@Configuration和@Bean用法

Spring中为了减少xml中配置,可以创建一个配置类(例如ExampleConfiguration)来对bean进行配置。1、配置spring配置文件来启用Java注解 ...
  • catoop
  • catoop
  • 2015年09月04日 12:54
  • 12049
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:@SpringBootApplication的使用
举报原因:
原因补充:

(最多只允许输入30个字)