| 
                         默认情况下,Spring Boot使用嵌入式容器来运行应用程序。在这种情况下,Spring Boot使用public static void main入口点来启动嵌入式Web服务器。此外,它还负责将Servlet,Filter和ServletContextInitializer bean从应用程序上下文绑定到嵌入式servlet容器。 
Spring Boot的另一个特性是它会自动扫描同一个包中的所有类或Main类的子包中的组件。 
Spring Boot提供了将其部署到外部容器的方式。在这种情况下,我们必须扩展SpringBootServletInitializer:  
- /** 
 - * War部署 
 - * 
 - * @author SanLi 
 - * Created by 2689170096@qq.com on 2018/4/15 
 - */ 
 - public class ServletInitializer extends SpringBootServletInitializer { 
 -  
 -   @Override 
 -   protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
 -       return application.sources(Application.class); 
 -   } 
 -  
 -   @Override 
 -   public void onStartup(ServletContext servletContext) throws ServletException { 
 -       super.onStartup(servletContext); 
 -       servletContext.addListener(new HttpSessionEventPublisher()); 
 -   } 
 - } 
 
  
这里外部servlet容器查找在war包下的META-INF文件夹下MANIFEST.MF文件中定义的Main-class,SpringBootServletInitializer将负责绑定Servlet,Filter和ServletContextInitializer。 
6、打包和部署
最后,让我们看看如何打包和部署应用程序。这两个框架都支持Maven和Gradle等通用包管理技术。但是在部署方面,这些框架差异很大。例如,Spring Boot Maven插件在Maven中提供Spring Boot支持。它还允许打包可执行jar或war包并就地运行应用程序。 
在部署环境中Spring Boot 对比Spring的一些优点包括:
    - 提供嵌入式容器支持
 
    - 使用命令java -jar独立运行jar
 
    - 在外部容器中部署时,可以选择排除依赖关系以避免潜在的jar冲突
 
    - 部署时灵活指定配置文件的选项
 
    - 用于集成测试的随机端口生成
 
 
7、结论
简而言之,我们可以说Spring Boot只是Spring本身的扩展,使开发,测试和部署更加方便。 
【编辑推荐】 - Springboot,SSM框架比较,区别
 - 阿里工程师开发了一款免费工具,提升Kubernetes应用开发效率
 - Vim哭了,浏览器就能远程VS Code开发,还支持Docker快速部署运行
 - 干货分享:六个知名的Go语言Web框架
 - 小程序多端框架全面测评
  【责任编辑:张燕妮 TEL:(010)68476606】 
            点赞 0                        (编辑:泰州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |