一 什么是springboot
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。(源自百度百科)
二 springboot特性
1. 独立运行的 Spring 项目
Spring Boot 可以以 jar 包的形式独立运行。
2. 内嵌 Servlet 容器
Spring Boot 使用嵌入式的 Servlet 容器(例如 Tomcat、Jetty 或者 Undertow 等),应用无需打成 WAR 包 。
3. 提供 starter 简化 Maven 配置
Spring Boot 提供了一系列的“starter”项目对象模型(POMS)来简化 Maven 配置。
4. 提供了大量的自动配置
Spring Boot 提供了大量的默认自动配置,来简化项目的开发,开发人员也通过配置文件修改默认配置。
5. 自带应用监控
Spring Boot 可以对正在运行的项目提供监控。
6. 无代码生成和 xml 配置
Spring Boot 不需要任何 xml 配置即可实现 Spring 的所有配置。
三 springboot常用注解
更多注解移步这里
1. @SpringBootApplication
替代 @SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan
2. @ImportAutoConfiguration
导入配置类,一般做测试的时候使用,正常优先使用@EnableAutoConfiguration
3. @SpringBootConfiguration
替代@Configuration
4. @Scope
指定bean的作用域,默认singleton,其它包括prototype、request、session、globalSession
5. @Lazy
使bean懒加载,取消bean预初始化
6. @Profile
指定Bean在哪个环境下被激活
7. @DependsOn
依赖的bean注册完成,才注册当前类,依赖bean不存在会报错。用于控制bean加载顺序
8. @Autowired
默认按类型装配,如果我们想使用按名称装配,可以结合@Qualifier注解一起使用。
9. @Lookup
根据方法返回的类型,去容器中捞出对应的bean
10. @Description
添加bean的文字描述
11. @AutoConfigureBefore
在指定配置类初始化前加载
12. @AutoConfigureAfter
在指定配置类初始化后加载
13. @AutoConfigureOrder
指定配置类初始化顺序,越小初始化越早
14. @EnableScheduling
开启定时任务功能
15. @Scheduled
按指定执行周期执行方法
17. @EnableAsync
开启方法异步执行的能力,通过@Async或者自定义注解找到需要异步执行的方法。
18. @Async
标记方法为异步线程中执行