spring boot部署与运行

spring boot打jar包

之前创建的spring boot项目中的打包方式都是jar,此时使用maven的package命令将项目打成jar包。之后在项目的target目录下可以找到这个jar包,然后在cmd或者IDEA的terminal中进入到这个jar包所在的目录,然后使用下面命令即可运行:

java -jar jar包的名字

web项目的话,此时会使用spring boot内置的tomcat启动,在浏览器中正常访问即可。

spring boot打war包

spring boot也可以打成我们熟悉的war包,此时可以将war包手动部署到tomcat中启动,需要注意的是部署的tomcat需要支持servlet 3.1以上的版本,推荐tomcat9以上的版本。

打成war包就无需内置的tomcat了,内置的tomcat无需打包:

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

创建一个类继承SpringBootServletInitializer

package com.monkey1024;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class ServletInitializer extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        //这里写上spring boot的启动类的名字
        return application.sources(WartestApplication.class);
    }

}

通过maven的package命令打包,然后将war包部署到tomcat的webapp目录中,启动tomcat即可。

jar包和war包的对比

打成jar包,方便快捷,不过要替换单个文件的话比较麻烦。

打成war包,可以针对tomcat调优,更换单个文件方便,这里需要手动配置tomcat的环境。