一.简介
1.产生背景
在传统的SSM开发中,存在一些问题
- Java项目复杂程度相对较高
- Java项目的维护成本较高
- 使用了大量的框架用于简化开发
- 在使用这些框架进行开发的时候,使用了大量的XML文件进行配置
- 且这些配置中很多的配置项都是固定的
- 考虑是否能够在开发前讲这些固定的配置项自动帮我们进行配置
- 最终实现无配置时代
- 在云时代快速的部署与启动工程
在SpringBoot中,终于在理论上实现了"无配置时代"
此处所谓的无配置,并不是完全没有配置
而是将很多了固定配置项帮我们事先进行了实现
项目中不再存在XML配置,SpringBoot存在自己的配置文件
这个配置文件相对比较简单
SpringBoot是一个用于简单的Spring应用的初始化创建与开发的框架
且SpringBoot帮我们简化了依赖的配置
实现了快速的搭建项目的目的
2.特征
- Create stand-alone Spring applications
- Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
- Provide opinionated ‘starter’ dependencies to simplify your build configuration
- Automatically configure Spring and 3rd party libraries whenever possible
- Provide production-ready features such as metrics, health checks, and externalized configuration
- Absolutely no code generation and no requirement for XML configuration
- 快速的搭建一个能够独立运行的Spring应用程序
- 在搭建的时候可以选择想要集成的主流框架
- 直接嵌入Tomcat、Jetty或Undertow(不需要部署WAR文件)
- 在SpringBoot中,使用的是Java工程,自带web容器
- 提供了内置的
starter
依赖项以简化构建配置- 每一个
starter
相当于一个依赖库,存在很多的依赖 - 也可以对版本进行统一的控制
- 每一个
- 尽可能自动配置Spring和第三方库
- 提供了大量的自动配置
- 所有的固定配置项都帮我们进行了配置
- 简化了许多的必备配置项
- 提供生产环境的监控,如指标、健康检查和外部化配置
- 开发环境
- 运行环境
- 没有冗余代码,无需XML配置