什么是SpringBoot
标签(空格分隔): SpringBoot
相信如果有关注Spring的程序猿们,对SpringBoot这个单词绝对不陌生。听多了自然想去了解下他。下面对SpringBoot的认识做一个总结。
Spring发展史
Spring1.x
为了让项目中对象与对象松耦合,Spring团队提出将对象的创建过程交由Spring容器进行管理,通过依赖注入,将对象注入到目标对象中。在Spring 1.x时代,所有Bean对象的声明都是通过xml文件进行配置,随着项目的不断扩大,需要将xml配置分别放到不同的配置文件中,需要管理大量的配置文件,造成频繁在java类和xml配置文件中切换
Spring2.x
随着JDK1.5带来的注解支持,Spring2.x可以使用注解对Bean进行声明和注入,大大减少了xml配置文件,同时也大大简化了项目的开发。
那问题来了,什么时候应该用xml配置,什么时候应该用注解声明?最佳实践:
- 应用的基本配置用xml。比如:数据源、资源文件等;
- 业务开发用注解,例如:Service中注入beand等;
Spring3.x到4.x
从Spring3.x开始提供java配置方式(@Configuration和@Bean),并且从Spring 4.x和SpringBoot中开始 推荐 这种配置方式
SpringBoot讲解
什么是SpringBoot
SpringBoot的理念是:“习惯优于配置”,让项目无配置化或者少配置化实现快速搭建、独立运行(运行jar)。
我个人的理解是:SpringBoot主要是为了实现与第三方技术的快速、无配置化整合,项目独立部署运行。(例如:一个web项目无需再部署到Tomcat中才能运行,直接运行一个自行编写的入口类(@SpringBootApplication)即可直接访问)。其主要目的是现在比较流行的项目微服务化
SpringBoot能给项目带来什么?(为什么要使用SpringBoot)
优点:
1. 快速构建项目
2. 对主流开发框架的无配置整合
3. 项目可独立运行,无需外部依赖Servlet容器
4. 提供运行时的应用监控
5. 极大的提高开发部署效率
6. 与云计算的天然集成