Web容器基本配置

Web容器选择配置

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

首先一定要明确SpringBoot中在spring-boot-starter-web当中是自带Web容器默认tomcat,因为tomcat是开源免费的

Web容器不使用tomcat配置

在这里插入图片描述

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
           <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
</dependencies>

这样就去除了tomcat,依赖项中就不会出现tomcat,当然也不会有tomcat启动
在这里插入图片描述

使用其他的Web容器配置

例如我不想使用tomcat,而想使用jetty,在pom.xml文件中加入jetty依赖

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
           <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jetty</artifactId>
        </dependency>
    </dependencies>

在这里插入图片描述

Tomcat的基本配置

在application.properties中配置

#spring.main.web-application-type=none 不启动web容器 禁止web容器
#server.port=8888  设置端口号
#server.port=-1  关闭所有http端口
#server.port=0  设置随机端口
#开启gzip压缩   Content-Encoding: gzip
server.compression.enabled=true  开启gzip压缩
#server.compression.mime-types 压缩设置默认中没有的格式
#server.compression.min-response-size  超过最低限度就去压缩

设置随机端口

server.port=0  设置随机端口

设置随机端口之后我们想要获得端口号,就必须要设置监听类来获得

@Component//注入到Spring中
public class MyApplicationListener implements ApplicationListener<WebServerInitializedEvent> {
    @Override
    public void onApplicationEvent(WebServerInitializedEvent event) {
        //获取web容器,得到随机端口
        System.out.println("event.getWebServer().getPort() = " + event.getWebServer().getPort());
    }
}

开启gzip压缩

server.compression.enabled=true

我们写一个测试类:

@RestController
public class HelloController {
    @GetMapping("/hello")
    public List<String> getusers(){
        List<String> users = new ArrayList<String>();
        for (int i = 0;i <= 10000;i++){
            users.add("dong:"+i);
        }
        return users;
    }
}

没有经过gzip压缩的:
在这里插入图片描述
经过压缩的:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值