31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口

这篇具有很好参考价值的文章主要介绍了31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口

★ 设置HTTP服务端口:

- server.port或者SERVER_PORT环境变量

——总结来说,其实就是要配置server.port外部配置属性。

▲ 同样遵守如下优先级:
这些都是外部配置源:
测试配置 > 命令行参数 > JSON配置 > 系统属性 > 环境变量 > 配置文件 > 配置类 > 默认属性

▲ 随机HTTP服务端口

server.port = 0即可。

【备注】: 还可将server.port设为-1,这样就关闭了HTTP端口,也就无法对外提供HTTP服务。

代码示例

就是在yml配置文件中配置端口号

31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口,springboot,spring boot,http,后端

★ 运行时发现HTTP服务端口

31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口,springboot,spring boot,http,后端

要获取Web服务器相关的信息(比如HTTP端口),都可通过WebServer API来获取。

▲ 为了获取WebServer实例,通常有两种方式:

- A. 定义一个WebServerApplicationContext成员变量,Spring Boot会为之完成依赖注入。
     接下来即可通过WebServerApplicationContext来获取WebServer

- B. 实现一个监听器接口:ApplicationListener<WebServerInitializedEvent>


▲ 对于测试用例,其实可以更简单来获取动态端口

  @LocalServerPort注解即可将HTTP端口动态注入。

代码演示

需求:在项目中获取服务器的动态端口,通过获取WebServer实例来获取动态端口号。

**获取WebServer实例的方法1:**通过WebServerApplicationContext来获取WebServer
31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口,springboot,spring boot,http,后端

获取WebServer实例的方法2:
实现一个监听器接口:ApplicationListener 来获取项目中的动态端口号
先获取WebServer实例,再从WebServer中获取端口号。

通过实现ApplicationListener接口,来实现一个监听器类
接口的参数是泛型 -> WebServerInitializedEvent ,表示这个监听器只监听WebServerInitializedEvent这个事件(web服务器的初始化事件)

@Component: 用于标识一个类作为组件被Spring容器管理
当一个类使用@Component注解时,Spring容器会自动创建该类的实例并将该实例纳入到容器的管理中。

为了让这个springboot项目能够识别到这个监听器,那么就得把这个监听器配置成springboot中的一个bean。
用@Component注解把这个监听器组件变成springboot容器中的bean。
那么项目启动的时候,spring容器就会来检测这个bean,看是否实现了ApplicationListener这个接口,如果发现这个组件有实现这个ApplicationListener接口,就会把这个组件注册成为容器中的监听器

31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口,springboot,spring boot,http,后端文章来源地址https://www.toymoban.com/news/detail-664523.html

到了这里,关于31、springboot 配置HTTP服务端口及如何通过WebServer实例动态获取项目中的HTTP端口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot服务注册到Eureka,端口总是默认8080,自己配置端口不生效

    这段时间接手了一个公司的老项目,用的是SpringCloud,在我用的时候突然发现有一个服务,注册到Eureka后,界面显示的端口和实际Ribbon调用的实例端口是不一致的,后来我自己写了个端口获取了一下所有的实例信息,方法如下 这个可以获取当前注册到Eureka的所有实例信息。

    2024年02月10日
    浏览(31)
  • 如何通过 IP + 端口远程访问服务器上的jupyter notebook

            前情需要:最近实验室和老师要求能时刻访问服务器上的jupyter notebook通过IP + 端口来连接,但是我弄了很久就是不能连接,始终是无法连接网站 但是通过ssh -L  本地端口:localhost:服务器jupyter的端口 root@服务器IP 这样连接是可以在本地运行的,但是没有完成老师的要求

    2024年02月11日
    浏览(50)
  • 如何通过nginx反向代理实现不同域名映射到同一台服务器的相同端口

    要在Nginx中实现不同域名映射到同一台服务器的相同端口,您可以使用Nginx的代理转发技术。 首先,您需要了解Nginx的代理转发工作原理。Nginx的代理转发是指在代理服务器(proxy server)收到一个请求时,先将请求转发给目标服务器(target server),然后将服务器的响应返回给代

    2024年02月13日
    浏览(61)
  • SpringBoot服务启动了,但通过http://ip:port/不能访问 (windows、linux)

    无法启动首先确认一下对应的端口有没有开放。正常服务器上需要开启防火墙的情况下,需要通过开放对应端口来实现项目访问。 systemctl status firewalld   #查询防火墙状态 firewall-cmd --query-port=1986/tcp  #查询某端口的TCP协议是否开放 防火墙处于Active状态即表示防火墙是开启

    2024年02月16日
    浏览(31)
  • 2. 如何通过公网IP&端口映射访问到设备的vmware虚拟机的ubuntu服务器

    中国移动公网IP申请过程 1. 主机设备是Windows 11系统 2. 安装vmware虚拟机 3. 创建ubuntu虚拟机(据说CentOS 7 明年就不维护了,就不用这个版本的linux了) 4. 安装nginx服务:默认端口80 5. 安装ssh服务:默认端口22 6. 设置主机 - ubuntu的端口映射 7. 设置路由器 - 主机的端口映射 8. 完成配置

    2024年02月05日
    浏览(51)
  • HDFS集群部署成功但网页无法打开如何解决(显示配置通过浏览器访问hdfs的端口)

    在学习黑马2023大数据教程过程中,首先依照视频完成了如下配置:【必须】 【黑马2023大数据实战教程】大数据集群环境准备过程记录(3台虚拟机) 黑马2023大数据实战教程】VMWare虚拟机部署HDFS集群详细过程 最后node1的hadoop用户下输入 start-dfs.sh 一键启动hdfs集群成功,三台虚

    2024年02月09日
    浏览(57)
  • docker中如何启动服务并配置外界访问端口配置

    在Docker中启动服务并配置外部访问端口通常涉及到使用 docker run 命令时指定 -p 参数来发布容器端口到宿主机上。以下是一个基本的步骤说明: 拉取镜像 (如果你还没有镜像的话): 将 image-name 替换为你想要运行的Docker镜像名。 运行容器并映射端口 : -d :表示在后台运行容

    2024年02月04日
    浏览(48)
  • iis配置网站服务器配置端口,如何实现IIS多个网页同一个端口?

    在Internet Information Services (IIS) 中配置多个网站共用同一个端口是可能的,但需要进行一些特定的配置。以下是实现这一目标的一般步骤: 创建多个网站: 首先,您需要在 IIS 中创建多个不同的网站。每个网站应该有自己的根目录和内容。 绑定共享端口: 在每个网站的配置中

    2024年02月13日
    浏览(71)
  • 在windows系统中映射网络驱动器时,如何通过非455端口远程访问Linux服务器的Samba服务

    通常情况下,在windows中通过Linux服务器的Samba服务去映射网络驱动器时候,一般默认就是直接填入内网Linux服务器ip即可,它会默认445端口。 若是我的windows并不和Linux服务器在一个网段时,该如何操作呢? 是 pid 为 4 的进程进行监听。 右键 电脑–管理–服务和应用程序–服务

    2024年02月11日
    浏览(47)
  • nginx部署本地项目如何让异地公网访问?服务器端口映射配置!

    接触过IIS或apache的小伙伴们, 对 nginx 是比较容易理解的, nginx有点类似,又有所差异,在选择使用时根据自己本地应用场景来部署使用即可。通过一些对比可能会更加清楚了解: 1 . nginx是轻量级,比apache占用更少的内存以及资源 2 . apache对php支持较简单,apache组件比nginx多

    2024年02月16日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包