@Data:注在类上,提供类的get、set、equals、hashCode、toString等方法
 @Component:单例模式,自动注册到Spring容器中,Spring容器启动时被实例化,Spring容器关闭时被销毁,通过@Autowired注入到其他组件中被使用
 @Service:@Component派生注解,表示服务层组件,实现业务逻辑
 @Controller:@Component派生注解,表示控制器类
 @Repository:@Component派生注解,表示数据访问层(DAO)
 @Configuration:@Component派生注解,表示配置类
 @Bean:注解函数返回的对象,自动注册到Spring容器中
 @Autowired:自动装配IOC容器中的对象
     ElementType.CONSTRUCTOR:构造函数入参
     ElementType.METHOD:成员函数入参
     ElementType.PARAMETER:构造函数入参或成员函数入参
     ElementType.FIELD:成员变量
     ElementType.ANNOTATION_TYPE
 @Lazy:延迟初始化,对象第一次被使用时初始化,解决循环引用
 @PostConstruct:注解成员函数,该成员函数在所有@Autowired成员变量被注入之后再调用,调用顺序:Constructor >> @Autowired >> @PostConstruct
@Scope(value = "prototype")
 singleton 单实例的(单例)(默认)   ----全局有且仅有一个实例
 prototype 多实例的(多例)   ---- 每次获取Bean的时候会有一个新的实例
 reqeust    同一次请求 ----request:每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP request内有效
 session    同一个会话级别 ---- session:每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP session内有效
@ConfigurationProperties:对应配置文件