spring boot 通过 Tomcat 启动

maven配置

打包类型改为

<packaging>war</packaging>

依赖

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

修改启动类

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;

@SpringBootApplication
public class JpaApplication extends SpringBootServletInitializer {

    /** Tomcat 发布 extends SpringBootServletInitializer */
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(JpaApplication.class);
    }

    public static void main(String[] args) {
        SpringApplication.run(JpaApplication.class, args);
    }

controller

@RestController
public class JpaController {

    @GetMapping("/hello")
    public String hello(){
        System.out.println("JpaController.hello 11111");
        return "public String hello()";
    }
}

端口号

这里说的端口是如果你在resource文件夹下修改了spring boot默认的8080端口(假设我这里改成了7777),那么打开 Tomcat–>conf–>server.xml文件 在8080端口底下加入如下配置

 <Connector port="7777" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

注意 这个只是添加一个端口号,意思是8080,7777,都可以访问到,想不同端口,访问不同项目,点击

测试

把spring boot项目打包成 war 包(名字假设为springBoot-0.0.1-SNAPSHOT.war),直接拷贝到 Tomcat –>webapps 文件夹下

直接运行bin目录下的 startup.bat 文件 ,浏览器输入 http://127.0.0.1:7777/springBoot-0.0.1-SNAPSHOT/hello 即可看到返回值 public String hello()

附带

这里顺便讲一下spring boot 其他几种启动方式

第一 直接工具里面启动,不多说

第二 cmd命令窗口
找到 项目根目录 ,执行命令 mvn spring-boot:run
如下图,项目名字为 jpa (切到src这一级目录下)

这里写图片描述

第三 直接运行jar包
直接运行 java -jar jpa-0.0.1-SNAPSHOT.war 当然了,这个运行方式,是war包,也是一样
这里写图片描述

猜你喜欢

转载自blog.csdn.net/fengchen0123456789/article/details/80746756