zoukankan      html  css  js  c++  java
  • spring boot使用tomcat启动

    在springboot中,内嵌tomcat服务器,也默认使用main函数启动整个项目。当我们想要使用自己的tomcat来启动项目应该怎么做?

     1、tomcat容器里面运行的是war,而spring boot默认生成的是jar包,所以需要先把jar包的打包方式改成war包

    在pom文件中添加

    <packaging>war</packaging>

    2、springboot里面会内置一个tomcat容器,如果再加入tomcat容器中会出错,所以先要去除内置tomcat

    在pom文件中添加

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

    或者将pom文件中

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

    替换成下面的代码

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <!-- 移除嵌入式tomcat插件 -->
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    3、添加servlet依赖

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>

    4、修改启动类,在spring boot中项目启动是通过main方法启动的,而使用外置tomcat是通过web.xml方式启动,所以要修改该启动类

    @SpringBootApplication
    public class TestApplication extends SpringBootServletInitializer {
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder springApplicationBuilder){
            return springApplicationBuilder.sources(TestApplication.class);
        }
        public static void main(String[] args) {
            SpringApplication.run(TestApplication.class, args);
        }
    }

    5、运行maven中的install,打包,在target文件夹中寻找war包,放入tomcat中

  • 相关阅读:
    arcgis for flex 学习笔记(一)
    也说JS脚本加载控制
    数据验证随想(续)
    Oracle 脚本记录
    探讨:如何更快的赋值取值
    正则表达式技巧
    类似web风格的 Winform 分页控件
    数据验证随想
    [leetcode]Excel Sheet Column Title
    [leetcode]Merge k Sorted Lists
  • 原文地址:https://www.cnblogs.com/sunshine-2018/p/11274127.html
Copyright © 2011-2022 走看看