spring-boot
Spring Boot可以轻松创建独立的,生产级的基于Spring的应用程序,您可以“运行”。我们对Spring平台和第三方库有自己的看法,所以您可以尽量少用大惊小怪。大多数Spring Boot应用程序只需要很少的Spring配置。
特征
- 创建独立的Spring应用程序
- 直接嵌入Tomcat,Jetty或Undertow(无需部署WAR文件)
- 提供自己的’入门’POM来简化你的Maven配置
- 尽可能自动配置Spring
- 提供生产就绪功能,如指标,运行状况检查和外部配置
绝对不会生成代码,并且不需要XML配置
部署到云
Spring Boot的灵活打包选项在部署应用程序时提供了大量选择。您可以将Spring Boot应用程序部署到各种云平台,容器映像(如Docker)或虚拟/真实机器。
Spring Boot的可执行程序jar已经为大多数流行的云PaaS(平台即服务)提供商准备好了。这些提供者往往要求你“携带你自己的容器”。他们管理应用程序进程(特别是Java应用程序),因此他们需要一个中间层,使您的应用程序 适应云对正在运行的进程的概念。
两个流行的云提供商Heroku和Cloud Foundry采用“buildpack”方法。buildpack将您部署的代码封装在启动应用程序所需的任何代码中。它可能是一个JDK和一个调用java,一个嵌入式Web服务器或一个成熟的应用程序服务器。buildpack是可插入的,但理想情况下,您应该能够尽可能少地进行自定义。这减少了不受您控制的功能的占用空间。它最大限度地减少了开发和生产环境之间的差异。
理想情况下,您的应用程序就像Spring Boot可执行程序jar一样,具有打包的所有内容。
实践
目前项目中,没有使用直接嵌入Tomcat,还是打war包并部署到Tomcat中.
不过,如果没有指定其他buildpack,Cloud Foundry会提供默认构建包。Cloud Foundry Java buildpack对Spring应用程序(包括Spring Boot)提供了出色的支持。您可以部署独立的可执行jar应用程序以及传统的.war打包应用程序。用到了Spring-boot的自动配置特性.