@SpringBootApplication

注解等价于: 
- @SpringBootConfiguration           标识这是一个springboot的配置类,默认自定配置Spring环境
- @EnableAutoConfiguration 	     自动与项目中集成的第三方技术进行集成
- @ComponentScan	             扫描入口类所在子包以及子包后代包中注解	

@Component

通用的对象注解
子类有三个
@Controller   用来创建控制器对象
@Service      用来创建业务层对象
@Repository   用来创建DAO层对象

@Autowired @Resource

注入对象
autowired是spring的
resource是javaee自带的
都可以使用

@Configuration + @Bean

用来创建多个对象

- @Configuration   代表这是一个spring的配置类相当于Spring.xml配置文件
- @Bean   用来在工厂中创建这个@Bean注解标识的对象  
  - 默认使用@Bean创建对象在工厂中唯一标识为方法名称
  - 修改在工厂中对象标识可以在使用@Bean("工厂中名字")指定一个名字 

@Value

属性注入
@Value("${xxx}")
yml中map: "{'aa':'1234','bb':'2344'}"
map的注入 需要@Value("#{${xxx}}")

@ConfigurationProperties(prefix="前缀")

对象方式注入,这种方式必须提供SET方法

@Component
@ConfigurationProperties(prefix = "user")
public class User {
    private String id;
    private String name;
    private Integer age;
    private String  bir;
    //set 方法一定要提供
}

yml中
user:
  id: 24
  name: xiaohei
  age: 23
  bir: 2012/12/12