zoukankan      html  css  js  c++  java
  • springboot之启动方式

    我们在ideal中启动springboot项目时时不需要加载Tomcat容器的,直接在启动类启动就行了,原因是springboot项目中默认包含了内置Tomcat

    //springboot项目必须引入的启动包
    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>

    我们可以点进去看一下spring-boot-starter-web中都有什么

     <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-tomcat</artifactId>
          <version>2.0.0.RELEASE</version>
          <scope>compile</scope>
     </dependency>

    可以看到我们在spring-boot-starter-web中是可以看到他是内置了tomcat的,所以我们在idea中启动时不需要加载Tomcat的,因为他默认提供了一个

    那么如果要在Tomcat中部署springboot项目中我们需要做什么呢?

    1.去除springboot自带的Tomcat

     <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-tomcat</artifactId>
                    </exclusion>
              </exclusions>
     </dependency>

    2.因为外置的Tomcat是不像内置的Tomcat一样能够自动识别springboot项目的启动入口的。所以我们需要继承springboot初始化的类SpringBootServletInitializer然后重写其中的configure方法,告知外置Tomcat的启动入口是你的springboot启动类

    @SpringBootApplication
    public class OneserviceManagerApplication extends SpringBootServletInitializer { 

      public static void main(String[] args) {
        SpringApplication.run(OneserviceManagerApplication.
    class, args);
      }
       @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(OneserviceManagerApplication.class);
        }
    }

    或者你也可以这么写

    public class ServletInitializer extends SpringBootServletInitializer {
    
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(OneserviceManagerApplication.class);
        }
    
    }

    然后你的springboot项目就可以成功部署到Tomcat下了

    当然如果你把项目打成jar包,他也是可以直接运行的,而且不需要外置的Tomcat的。前提是不要做上面的那些修改了

  • 相关阅读:
    jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
    jQuery选择器大全
    Jquery插件 easyUI属性汇总
    JQuery EasyUI 对话框的使用方法
    jQuery Alert Dialogs (Alert, Confirm, & Prompt代替方案)
    JavaScript 开发者经常忽略或误用的七个基础知识点
    如何学习Javascript
    父子页面之间跨域通信的方法
    .NET中常见的内存泄露问题——GC、委托事件和弱引用
    启动外部exe程序
  • 原文地址:https://www.cnblogs.com/UncleWang001/p/10025130.html
Copyright © 2011-2022 走看看