标签:mvc tco 外置 检查 dispatch Servle 驱动 启动脚本 利用
Spring Boot的特性
1)、创建独立的Spring应用
2)、直接嵌入Tomcat、Jetty或Undertow等Web容器(不需要部署WAR文件)
3)、提供固化的starter依赖,简化构建配置和依赖管理
4)、当条件满足时自动地装配Spring或第三方类库
5)、提供运维(Production-Ready)特性,如指标信息(Metrics)、健康检查及外部化配置
6)、绝无代码生成,并且不需要XML配置
即约定大于配置,简化开发。
为什么说是独立的Spring应用?
SpringBoot应用无需再向传统的JavaEE应用那样,将应用打包成WAR文件或者JAR文件,并部署到JavaEE容器中运行(虽然其也支持)。
SpringBoot应用采用嵌入式Web容器,独立于外部容器,对应用生命周期拥有完全自主的控制。
在传统的Spring应用中,外置容器需要启动脚本将其引导(如ContextLoaderListener),随其生命周期回调执行Spring上下文的初始化。比较代表性的是Spring Web中的
ContextLoaderListener和Web MVC中的DispatcherServlet,前者利用ServletContext生命周期构建Web ROOT Spring应用上下文,后者结合Servlet生命周期创建DispatcherServlet
的Spring应用上下文。无论何种方式,均属于被动的回调执行,这也是为什么它们没有完整的应用主导权的原因。
当Spring Boot出现嵌入式容器启动方式后,嵌入式容器则称为应用的一部分,从本质上来说,它属于Spring应用上下文的组件Beans,这些组件和其他组件均由自动装配
特性Spring Bean定义(BeanDefinition),随Spring应用上下文启动而注册并初始化。而驱动Spring应用上下文启动的核心组件则是Spring Boot核心API SpringApplication,
所以是Spring应用,也可以称为SpringBoot应用。
标签:mvc tco 外置 检查 dispatch Servle 驱动 启动脚本 利用
原文地址:https://www.cnblogs.com/yangyongjie/p/11074513.html