Spring Boot

Spring Boot 背景分析

JAVAEE应用体系中繁重的配置、低下的开发效率、高难度的三方集成,复杂的部署流程等等一直被开发人员所诟病。即使是使用Spring这样的轻量级的资源整合框架,在实现其相对比较多的资源整合时,依旧需要手动依赖管理,复杂的XML配置(还经常没有提示)。还有就是现在的软件生态应用也已经形成一定的规模,系统架构正在从单体架构,分布式架构,跨越到微服务架构。随着整个架构体系的变化,企业对技术的要求也在变化,现在的企业更注重技术的开箱即用,更关注技术在生态圈中的深度融合,更注重轻量级的运维。尤其spring boot诞生。

Spring Boot 要解决什么问题

Spring Boot是由Pivota团队提供的全新的Java软件开发框架(很多人现在把它理解为一个脚手架),其设计目的是用来简化Spring项目的舒适化搭建以及开发过程。该框架使用了特定的注解方式来进行配置,从而使开发人员不在需要大量的xml配置。不在需要大量的手动依赖管理。Spring Boot基于快速构建理念,通过约定大于配置,开箱即用的方式,希望能在蓬勃发展的快速应用开发领域成为其领导者。针对但提示开发的不足,微服务架构以去中心化、分布式的结构登场。它将一个项目的各个模块有序分割,之后由各模块提供API,供其它功能模块调用。各模块一般都独立运行,而且有自己的数据库与服务器,通过"化整为零",有效的降低了各个模块的重量,同时提高了西永的安全性和稳定性。
有思想还不行,要将思想落地 需要有工具,而SpringBoot就是帮助我们进行微服务架构开发的一套工具/框架。SpringBoot是Spring框架基础上发展出来的,Boot是启动的意思,从这层含义来讲,springboot可以帮助我们快速启动一个项目,因为有很多jar包它已经帮我们配置好了

Spring Boot 有哪些核心的关键特性

1.起步依赖(Starter Dependency):
提供自以为是的"入门"依赖项,以简化构建配置
2.自动配置(Auto Configuration):
尽可能自动配置Spring和3rd Party库,提供生产就绪功能
3.健康检查(Actator)监控
4.嵌入式服务(Tomcat,Jetty):
直接嵌入Tomcat,Jetty或Undertow(无需部署WAR文件)
5.创建独立的Spring应用程序
完全没有代码生,也不需要XMl配置

Spring Framework,Spring Boot和Spring Cloud之间的关系

三者都是Spring的成员,功能各有不同,SpringCloud依赖SpringBoot实现微服务;SpringBoot默认集成SpringMVC组件;SpringCloud使SpringMVC编写微服务HTTP接口(微服务通讯接口采用的是http+json格式,即restfull轻量级)

总结(Summary)

总之,Spring Boot 框架就是要基于快速构建理念,基于约定大于配置方式,实现技术的开箱即用,以提高开发效率。~~~~

你可能感兴趣的:(java)