SpringBoot内置Tomcat 配置和切换

2023-11-16

目录

SpringBoot内置Tomcat 配置和切换

基本介绍

内置Tomcat 的配置

application.yml配置

对上面代码解释一下方便理解

通过类来配置Tomcat

注销application.yml 对tomcat 配置,完成测试

切换WebServer, 演示如何切换成Undertow 

修改pom.xml , 排除tomcat , 加入Undertow 包的依赖

运行项目,完成测试


SpringBoot内置Tomcat 配置和切换

基本介绍

SpringBoot 支持的webServer: Tomcat, Jetty, or Undertow默认是Tomcat

SpringBoot 应用启动是Web 应用时。web 场景包-导入tomcat

支持对Tomcat(也可以是Jetty 、Undertow)的配置和切换

内置Tomcat 的配置

通过application.yml 完成配置

配置和ServerProperties.java 关联, 通过查看源码得知有哪些属性配置

application.yml配置


server:
  #配置端口
  port: 9999
  tomcat: #对tomcat配置
    threads:
      max: 10 #最大的工作线程, 默认是200
      min-spare: 5 #最小工作线程, 默认是10
    accept-count: 200 #tomcat启动的线程达到最大值, 接受排队的请求个数,默认100
    max-connections: 2000 #最大连接数, 并发数
    connection-timeout: 10000 #建立连接的超时时间, 单位是毫秒
    #还有很多其它的配置,就不一一列

对上面代码解释一下方便理解

 

通过类来配置Tomcat

通过类来配置Tomcat(说明: 配置文件可配置的更全.)

这个跟yml文件配置差不多一样的就是 .setxx设置

/**
 * 通过类来配置Tomcat
 */
@Component
public class CustomizationBean implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {

    @Override
    public void customize(ConfigurableServletWebServerFactory server) {
        server.setPort(10000); //我们设置了server的端口为10000
    }
}

注销application.yml 对tomcat 配置,完成测试

切换WebServer, 演示如何切换成Undertow 

修改pom.xml , 排除tomcat , 加入Undertow 包的依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <!-- 引入spring-boot-starter-web 排除tomcat -->
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- 引入undertow -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-undertow</artifactId>
    </dependency>

说明: 因为去掉了tomcat 的依赖,所以项目有使用到tomcat 相关类/接口,就会报错,注销/删除这部分代码即可,

运行项目,完成测试

 如果不知道的可以去看看上一篇博客有一个页面的介绍 不看也没有关系

这里主要演示切换tomato 到其他的服务 不会对页面访问造成任何影响 这个结论

这个页面的链接

 

 测试完毕,我还是改回成Tomcat 这个习惯

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringBoot内置Tomcat 配置和切换 的相关文章

  • 我需要在 Spring 中检查每个控制器中的有效会话吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 假设在 Spring Mvc 的 Web 应用程序中 我们是否需要检查每个控制器或 jsps 中的有效会话 我该如何解决 MVC 中的
  • AES 加密 Java/plsql

    我需要在Java和plsql DBMS CRYPTO for Oracle 10g 上实现相同的加密 解密应用程序 两种实现都工作正常 但这里的问题是我对相同纯文本的加密得到了不同的输出 下面是用于加密 解密过程的代码 Java 和 PLS
  • 在Windows上安装Java 11 OpenJDK(系统路径问题)

    Java 11 最近发布了 众所周知 这个版本没有安装文件 当然 要在没有安装程序的情况下安装 Java 我将系统设置 PATH 和 JAVA HOME 设置为解压缩 Java 11 的文件夹的地址 根据对类似问题的已接受回复建议 唯一的事
  • JNI 不满意链接错误

    我想创建一个简单的 JNI 层 我使用Visual studio 2008创建了一个dll Win 32控制台应用程序项目类型 带有DLL作为选项 当我调用本机方法时 出现此异常 Exception occurred during even
  • IntelliJ IDEA 创建的 JAR 文件无法运行

    我在 IntelliJ 中编写了一个跨越几个类的程序 当我在 IDE 中测试它时它运行良好 但是 每当我按照教程将项目制作成 jar 可执行文件时 它就不会运行 双击 out 文件夹中的文件时 该文件不会运行 并显示 无法启动 Java J
  • java.io.IOException: %1 不是有效的 Win32 应用程序

    我正在尝试对 XML 文档进行数字签名 为此我有两个选择 有一个由爱沙尼亚认证中心为程序员创建的库 还有一个由银行制作的运行 Java 代码的脚本 如果使用官方 认证中心 库 那么一切都会像魅力一样进行一些调整 但是当涉及到银行脚本时 它会
  • HDFS:使用 Java / Scala API 移动多个文件

    我需要使用 Java Scala 程序移动 HDFS 中对应于给定正则表达式的多个文件 例如 我必须移动所有名称为 xml从文件夹a到文件夹b 使用 shell 命令我可以使用以下命令 bin hdfs dfs mv a xml b 我可以
  • 使用替换字符串中多个单词的最有效方法[重复]

    这个问题在这里已经有答案了 此刻我正在做 Example line replaceAll replaceAll cat dog replaceAll football rugby 我觉得那很丑 不确定有更好的方法吗 也许循环遍历哈希图 ED
  • 从 android 简单上传到 S3

    我在网上搜索了从 android 上传简单文件到 s3 的方法 但找不到任何有效的方法 我认为这是因为缺乏具体步骤 1 https mobile awsblog com post Tx1V588RKX5XPQB TransferManage
  • 反思 Groovy 脚本中声明的函数

    有没有一种方法可以获取 Groovy 脚本中声明的函数的反射数据 该脚本已通过GroovyShell目的 具体来说 我想枚举脚本中的函数并访问附加到它们的注释 Put this到 Groovy 脚本的最后一行 它将作为脚本的返回值 a la
  • 制作java包

    我的 Java 类组织变得有点混乱 所以我要回顾一下我在 Java 学习中跳过的东西 类路径 我无法安静地将心爱的类编译到我为它们创建的包中 这是我的文件夹层次结构 com david Greet java greeter SayHello
  • 将多模块 Maven 项目导入 Eclipse 时出现问题 (STS 2.5.2)

    我刚刚花了最后一个小时查看 Stackoverflow com 上的线程 尝试将 Maven 项目导入到 Spring ToolSuite 2 5 2 中 Maven 项目有多个模块 当我使用 STS 中的 Import 向导导入项目时 所
  • Tomcat 6找不到mysql驱动

    这里有一个类似的问题 但关于类路径 ClassNotFoundException com mysql jdbc Driver https stackoverflow com questions 1585811 classnotfoundex
  • Java - 不要用 bufferedwriter 覆盖

    我有一个程序可以将人员添加到数组列表中 我想做的是将这些人也添加到文本文件中 但程序会覆盖第一行 因此这些人会被删除 如何告诉编译器在下一个空闲行写入 import java io import java util import javax
  • 将2-3-4树转换为红黑树

    我正在尝试将 2 3 4 树转换为 java 中的红黑树 但我无法弄清楚它 我将这两个基本类编写如下 以使问题简单明了 但不知道从这里到哪里去 public class TwoThreeFour
  • com.jcraft.jsch.JSchException:身份验证失败

    当我从本地磁盘上传文件到远程服务器时 出现这样的异常 com jcraft jsch JSchException Auth fail at org apache tools ant taskdefs optional ssh Scp exe
  • 中断连接套接字

    我有一个 GUI 其中包含要连接的服务器列表 如果用户单击服务器 则会连接到该服务器 如果用户单击第二个服务器 它将断开第一个服务器的连接并连接到第二个服务器 每个新连接都在一个新线程中运行 以便程序可以执行其他任务 但是 如果用户在第一个
  • JAVA - 如何从扫描仪读取文件中检测到“\n”字符

    第一次海报 我在读取文本文件的扫描仪中读取返回字符时遇到问题 正在读取的文本文件如下所示 test txt start 2 0 30 30 1 1 90 30 0 test txt end 第一行 2 表示两个点 第二行 位置索引 0 xp
  • java8 Collectors.toMap() 限制?

    我正在尝试使用java8Collectors toMap on a Stream of ZipEntry 这可能不是最好的想法 因为在处理过程中可能会发生异常 但我想这应该是可能的 我现在收到一个我不明白的编译错误 我猜是类型推理引擎 这是
  • Jackson 将单个项目反序列化到列表中

    我正在尝试使用一项服务 该服务为我提供了一个带有数组字段的实体 id 23233 items name item 1 name item 2 但是 当数组包含单个项目时 将返回该项目本身 而不是包含一个元素的数组 id 43567 item

随机推荐

  • 如何在 Python 中将 Excel 文件转换为图像?Aspose快速搞定

    在各种情况下 需要将 Excel 电子表格嵌入到 Web 或桌面应用程序中 在这种情况下的解决方案之一是将 Excel 工作表转换为图像格式 在本文中 将学习如何在 Python中将Excel XLSX 或 XLS 转换为 PNG JPEG
  • 算法和数据结构项目练习5-哈希链表

    Hash Chaining Table 项目介绍 代码实现 项目介绍 本项目实现一个简单的哈希表 txt文件包含一个整数值序列 读取它们并使用链接构造一个哈希表 程序应该依次读取每个整数 并使用mod 100作为哈希函数计算其哈希值 因此
  • CSS笔记(黑马程序员pink老师前端)浮动,清除浮动

    浮动可以改变标签的默认排列方式 浮动元素常与标准流的父元素搭配使用 网页布局第一准则 多个块级元素纵向排列找标准流 多个块级元素横向排列找浮动 float属性用于创建浮动框 将其移动到一边 直到左边缘或右边缘触及包含块或另一个浮动框的边缘
  • win10的pycharm开发工具使用Jupyter的各种报错:环境问题

    一 问题 在win10系统的pycharm开发工具使用Jupyter的各种报错 却一直解决不了 我一度使用过购买云服务器 重装系统等等各种办法 都没能解决 例如 在speech processing ipynb文件中 import libr
  • FreeIPA 统一身份认证实现

    1 FreeIPA概述 1 FreeIPA简介 FreeIPA是一个用于Linux Unix环境开源的身份管理系统 提供集中式帐户管理和身份验证 与Windows Active Directory或LDAP的作用类似 FreeIPA集成了3
  • 局部均值分解(matlab实现有注释)

    局部均值分解 local mean decomposition LMD 方法同经验模态分解方法 EMD 一样 也是一种自适应信号处理方法 LMD通过改变信号分解过程能有效改进EMD方法存在的包络拟合不准确 边界处发散等问题 代码如下 cle
  • Linux高阶—CPU性能压测spec(十)

    目录 一 基本概念 二 工作原理 三 测试套件 整数和浮点 测试套件 四 工作模式 speed 测量 rate 测量 五 测试场景 六 操作案例 一 基本概念 SPEC基准广泛用于评估计算机CPU性能工具 SPEC官网下载SPEC CPU
  • 小心宏定义出错

    当宏参数在宏定义中出现超过一次 这个宏作用在复杂的表达式里就可能出错 导致不可预料的结果 我还记得我有一次为这个问题导致的出错 查了一个星期 最后整整debug了一个工作日才找到这个问题 所以提醒大家一定要小心 比如 define MAX
  • FastCGI模块

    FastCGI模块 FastCGI 摘要 这个模块允许nginx同FastCGI协同工作 并且控制哪些参数将被安全传递 例 location fastcgi pass localhost 9000 fastcgi index index p
  • MMU的作用及工作过程

    MMU的作用及工作过程 MMU Memory Management Unit 是内存管理单元的简称 读者朋友在学习嵌入式的时候应该听说过 CLinux 这是适合没有MMU的微控制器使用的嵌入式Linux操作系统 比如ARM7 由于没有MMU
  • 对大连律师李振鹏《甲骨作文,应判“零分”》的反驳

    大连律师李振鹏 甲骨作文 应判 零分 请看http hi baidu com B4 F3 C1 AC C2 C9 CA A6 C0 EE D5 F1 C5 F4 blog item d94cb8fb8bb7b66d034f56c3 html
  • JDK8新特性之lambda表达式

    Welcome Huihui s Code World 接下来看看由辉辉所写的关于lambda表达式的相关操作吧 目录 Welcome Huihui s Code World 一 是什么 二 为什么要用 三 底层 四 什么时候用 五 怎么用
  • 2018Global Game Jam成都赛区赛后感

    这次是我第二次参加ggj 感觉这次大家的水平都高了很多 影响最深的还是自己的三度上台 以前我都是用的unity5 X系列来打包游戏的 这次由于想用到unity2017新增的Camera插件 于是这次第一次用unity2017 游戏做后打包成
  • 兆易创新携手合肥产投进军12英寸晶圆存储器

    2018年12月29日北京兆易创新科技股份有限公司董事会发布公告 北京兆易创新科技股份有限公司与合肥市产业投资控股 集团 有限公司于2017年10月26日签署了 关于存储器研发项目之合作协议 约定双方合作开展12英寸晶圆存储器研发项目 经沟
  • JVM内存溢出的几种方式与解决方法

    内存溢出 JVM运行时首先需要类加载器 classLoader 加载所需类的字节码文件 加载完毕交由执行引擎执行 在执行过程中需要一段空间来存储数据 类比CPU与主存 这段内存空间的分配和释放过程正是我们需要关心的运行时数据区 内存溢出的情
  • QT单例类管理信号和槽函数

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 创建单例类 二 主界面添加组件 三 组件代码绑定信号和槽 四 效果图 总结 前言 提示 这里可以添加本文要记录的大概内容 在QT当中 遇到主界面和多个组件
  • 华为机试学习——字符串最后一个单词的长度

    问题描述 计算字符串最后一个单词的长度 单词以空格隔开 字符串长度小于5000 注 字符串末尾不以空格为结尾 include
  • QT中各种MessageBox的使用

    MessageBox h ifndef MESSAGEBOX H define MESSAGEBOX H include
  • vue+pg库+openlayer5+geoserver+离线地图瓦片构建gis地图+地图撒点+点击点出现地图弹框(***完整流程***)

    实现效果 ol5的apihttps openlayers org en latest apidoc module ol Feature Feature html getProperties 一 在vue项目中使用gis地图 实现地图的搭建
  • SpringBoot内置Tomcat 配置和切换

    目录 SpringBoot内置Tomcat 配置和切换 基本介绍 内置Tomcat 的配置 application yml配置 对上面代码解释一下方便理解 通过类来配置Tomcat 注销application yml 对tomcat 配置