博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot系列六:SpringBoot整合Tomcat
阅读量:7123 次
发布时间:2019-06-28

本文共 2073 字,大约阅读时间需要 6 分钟。

声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅。

1、概念:SpringBoot 整合 Tomcat

2、背景

  SpringBoot 本身支持有两类的 WEB 容器:默认的 Tomcat、Jetty,那么现在如果从实际的角度来看,在 SpringBoot 运行的时候 即使没有 WEB 容器,那么也可以采用自定义的方式实现 WEB 容器的启动。如果说现在只是做为一个简单的服务发布,那么的确 用不上 Tomcat,可是 Tomcat 也有自身的优势,毕竟它是一个具备有完全功能的 WEB 容器,而且在这个容器里面还可以进行各种 服务的配置,所以一些开发者认为,不应该只是纯粹的去使用微服务的方式来启动 WEB 程序,我们的程序还应该发布到 Tomcat 之中。

2.1、配置 Tomcat 运行

1、 如果一个程序项目要想发布到 Tomcat 上运行,那么该项目一定要设置为 war 文件,于是首先第一步就需要修改项目的类型为 war,修改 pom.xml 配置文件:

· 首先将打包的类型设置为 war 文件:

war

· 项目最终需要进行打包操作,所以还需要设置一个 maven 的 war 文件的打包插件:

org.apache.maven.plugins
maven-war-plugin
study

· 由于现在的项目打包为 war 文件之后需要通过 tomcat 执行,所以注销掉 jetty 的相关配置。

2、 由于现在项目模块追加了新的 maven 插件,所以为了让插件起作用,则应该进行 maven 的更新处理;

3、 更新完成 maven 项目之后会提示用户你现在缺少 webapps/WEB-INF/web.xml 配置文件,所以可以通过 Tomcat 安装目录拷贝此 文件到项目之中;

4、 如果现在你的项目要想以 Tomcat 的形式运行,那么必须对 SpringBoot 的启动类做有一个简单的配置处理;

package cn.study.microboot;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.web.support.SpringBootServletInitializer;import org.springframework.context.annotation.ComponentScan;@SpringBootApplication // 启动SpringBoot程序,而后自带子包扫描@ComponentScan("cn.study.microboot")public class StartSpringBootMain extends SpringBootServletInitializer { // 必须继承指定的父类    @Override    protected SpringApplicationBuilder configure(            SpringApplicationBuilder builder) {        return builder.sources(StartSpringBootMain.class) ;    }    public static void main(String[] args) throws Exception {        SpringApplication.run(StartSpringBootMain.class, args);    }}

5、 进行项目的maven打包处理:

6、 将生成的 study.war 文件拷贝到 tomcat/webapps 目录之中进行项目的热部署,随后启动 Tomcat 容器,来执行当前的程序文件, 访问路径:http://localhost/study/addPre;

转载于:https://www.cnblogs.com/leeSmall/p/8711382.html

你可能感兴趣的文章
HashMap: 通俗分析核心源码
查看>>
CSS设置居中的方案总结-超全
查看>>
Feathers 入门
查看>>
css知识:flex 、bfc
查看>>
设计模式系列之「建造者模式」
查看>>
数据结构—线性表
查看>>
Mybatis技术内幕(2.3.5):反射模块-Property工具类
查看>>
软件测试工程师的技能树
查看>>
聊聊架构
查看>>
小米4.0系统如何不Root激活xposed框架的方法
查看>>
Android跨界面共享数据——LiveData应用
查看>>
华为余承东:自产AI芯片 旗舰机比苹果、三星强
查看>>
微软Azure SQL数据仓储供优惠价格购买预留容量
查看>>
Java8ConcurrentHashMap
查看>>
数据分析Power BI数据可视化教程(三)——如何创建矩阵和表以及散点图
查看>>
NoSQL最新现状和趋势:云NoSQL数据库将成重要增长引擎
查看>>
Vue组件传值
查看>>
react-native搭建用例(非CRNA)
查看>>
HTTP协议
查看>>
github简单使用
查看>>